作者查詢 / gmccntzx1

總覽項目: 發文 | 留言 | 暱稱
作者 gmccntzx1 在 PTT [ Python ] 看板的留言(推文), 共854則
限定看板:Python
[問題] 如何知道一個 function 牽扯到多少 modul
[ Python ]18 留言, 推噓總分: +5
作者: moodoa3583 - 發表於 2021/09/07 08:34(4年前)
15Fgmccntzx1: 你有試過 call graph 嗎? 可以找找看 pycallgraph2 看09/07 22:02
16Fgmccntzx1: 怎麼使用。09/07 22:02
[公告] 板規討論,邀請大家給點建議
[ Python ]56 留言, 推噓總分: +9
作者: catcatcatcat - 發表於 2020/11/12 14:38(5年前)
24Fgmccntzx1: 推樓上。另外也希望可以禁止自刪問題,因為這不僅很不11/14 12:31
25Fgmccntzx1: 尊重幫你回答問題的人,也沒辦法讓有效的問題留在板上11/14 12:31
26Fgmccntzx1: 。雖然現在即使刪文了還是有機會可以從 pttweb 找到11/14 12:31
27Fgmccntzx1: 備份,但沒有原文的話就沒有機會讓後來的人對原問題做11/14 12:31
28Fgmccntzx1: 延伸或補充。11/14 12:31
29Fgmccntzx1: 至於 "ptt 版型老舊而不適合討論問題" 這點,個人認為11/14 12:31
30Fgmccntzx1: 確實是有不方便之處,所以以前也有看到有人會同時在11/14 12:31
31Fgmccntzx1: facebook 社群或其他地方同時張貼問題尋求解答。但至少11/14 12:32
32Fgmccntzx1: 這邊也是一個門路,而且也不乏有專業的人會出沒。11/14 12:32
Re: [心得] 入門:使用聲音進行預測性維護已刪文
[ Python ]6 留言, 推噓總分: -5
作者: wafdawg - 發表於 2020/11/12 11:04(5年前)
2Fgmccntzx1: 還要幫你的行為舉證嗎? https://cutt.ly/zgNWV2u11/12 11:50
[問題] pandas 使用dropna 無法刪除nan列
[ Python ]33 留言, 推噓總分: +2
作者: yshihyu - 發表於 2020/09/05 06:42(5年前)
1Fgmccntzx1: 你可以先去查一下 how='all' or 'any' 的差別09/05 07:12
2Fgmccntzx1: 再補一點:注意有沒有設定 inplace=True09/05 07:17
5Fgmccntzx1: 你可以描述一下你最後想要得到的結果長什麼樣子嗎?是09/05 08:39
6Fgmccntzx1: 只要一行資料中有一欄資料是 NA 就把那行資料 drop 掉09/05 08:39
7Fgmccntzx1: ,還是怎麼樣的?如果是的話,照理說我上面的做法就可09/05 08:39
8Fgmccntzx1: 以了。如果不是,那你至少簡單的描述一下你預期處理前09/05 08:39
9Fgmccntzx1: 與處理後想看到的資料長什麼樣子給大家看看,省得雙方09/05 08:39
10Fgmccntzx1: 還要等待回覆和猜測你的想法是什麼09/05 08:39
16Fgmccntzx1: 因為你說的「刪掉 nan 欄位」這句話的意思,我理解的09/05 08:48
17Fgmccntzx1: 是「把該行裡是 nan 的那個欄位刪掉,只保留其他有資09/05 08:48
18Fgmccntzx1: 料的欄位」。如果是這樣的話,這種操作對於這種 table09/05 08:48
19Fgmccntzx1: 形式的資料是不合理的,因為這就代表處理完後,各行09/05 08:48
20Fgmccntzx1: 資料的欄位數量會不同。09/05 08:48
21Fgmccntzx1: 因為 dropna 預設回傳一個新的 dataframe,避免直接修09/05 08:49
22Fgmccntzx1: 改原始資料。09/05 08:49
23Fgmccntzx1: 所以如果你不是把 inplace 設為 true 的話,你就要去09/05 08:50
24Fgmccntzx1: 接 dropna 回傳的資料。09/05 08:50
25Fgmccntzx1: 而如果你設 inplace=True,那寫法就變成 df.dropna(in09/05 08:52
26Fgmccntzx1: place=True) 即可,跑完這行後,df 就是你要的結果。09/05 08:52
30Fgmccntzx1: 沒事,只是覺得不要讓原 PO 解完問題卻不知道原因是什09/05 08:57
31Fgmccntzx1: 麼09/05 08:57
[問題] function物件可以透過class呼叫嗎
[ Python ]40 留言, 推噓總分: +3
作者: XperiaZ6C - 發表於 2020/08/22 09:08(5年前)
1Fgmccntzx1: 你的意思是,每當一個 member method 被呼叫時,就要08/22 09:23
2Fgmccntzx1: 抓到是誰被呼叫嗎?08/22 09:23
3Fgmccntzx1: 如果要的效果是這樣,我目前是有想到可以透過 metacla08/22 09:25
4Fgmccntzx1: ss 去做08/22 09:25
5Fgmccntzx1: 我釐清一下你想做的事:也就是說,任何一個沒有定義在08/22 09:58
6Fgmccntzx1: Logger class 裡的 function ‘foo’,只要透過 logg08/22 09:58
7Fgmccntzx1: er.foo() 這種方式呼叫,你就可以先透過 logger 去做08/22 09:58
8Fgmccntzx1: 你想做的事再讓那個 function 做自己的事囉?08/22 09:58
9Fgmccntzx1: 先說好了,如果要透過這種呼叫方式來達到這種功能是有08/22 10:06
10Fgmccntzx1: 點奇怪。雖然說你可以硬是透過 `__getattr__()` 讓08/22 10:06
11Fgmccntzx1: logger 在找不到 member method 時(也就是上述的情況08/22 10:09
12Fgmccntzx1: ),去其他 scope 找你要的 function ,如 globals()08/22 10:11
13Fgmccntzx1: 。但是這樣你就要自己處理 name resolution 的問題。08/22 10:12
14Fgmccntzx1: 再來,怎麼取得 caller 的 arguments 又是另一個問題08/22 10:13
15Fgmccntzx1: 但是如果你沒有需要處理 caller arguments 的話,那上08/22 10:19
16Fgmccntzx1: 面那個問題就省了08/22 10:19
19Fgmccntzx1: 我是這樣覺得,但目前還不清楚原 PO 真正的問題08/22 10:39
20Fgmccntzx1: 怕變成 XY problem08/22 10:40
21Fgmccntzx1: 先給原 PO 看看這個是不是你想要的結果:08/22 10:45
22Fgmccntzx1: https://pastebin.ubuntu.com/p/vnYCs4PxtZ/08/22 10:45
23Fgmccntzx1: 試試看這是不是你要的效果:08/22 12:30
24Fgmccntzx1: https://pastebin.ubuntu.com/p/MjrW628M7k/08/22 12:30
25Fgmccntzx1: 但是這個做法就如同前面提到的,若你需要處理 caller08/22 12:31
26Fgmccntzx1: arguments 的話,還要額外透過 frame 去抓資訊08/22 12:31
27Fgmccntzx1: 另一個做法是改成用 function wrapper 把每一個 rpc08/22 12:33
28Fgmccntzx1: 提供的 function 都包過一次,這種方法對於也要處理08/22 12:33
29Fgmccntzx1: arguments 的話會比較方便,但是缺點就是一旦 wrapper08/22 12:34
30Fgmccntzx1: 太多,要轉進呼叫到實際上 rpc 的 function 也需越多層08/22 12:34
31Fgmccntzx1: 接續上面第一種方式,也可以不透過 frame 去抓 caller08/22 12:58
32Fgmccntzx1: argument08/22 12:58
33Fgmccntzx1: https://pastebin.ubuntu.com/p/HpXBF4cNgy/08/22 12:58
34Fgmccntzx1: (`・∀・)b08/22 17:27
36Fgmccntzx1: @azuel 不用這樣說,每個人都嘛是從新手開始走起。覺08/23 20:51
37Fgmccntzx1: 得自己不足的時候,就繼續努力把能力練起來,這才是該08/23 20:51
38Fgmccntzx1: 做的事。而且說實在的,我也沒有解決了什麼高深的問題08/23 20:51
39Fgmccntzx1: ,純粹只是分享以我目前所知所能構成的解法。以後對 P08/23 20:51
40Fgmccntzx1: ython 了解更透徹後,說不定又會有更好的解法。共勉之08/23 20:51
Re: [問題] function物件可以透過class呼叫嗎
[ Python ]10 留言, 推噓總分: +1
作者: skyconquer - 發表於 2020/08/22 10:27(5年前)
1Fgmccntzx1: 痾,這樣並沒有達到原 PO 要的那種呼叫方式呀08/22 10:33
2Fgmccntzx1: 從他的回文來看,要的呼叫方式應該是 `logger.func()`08/22 10:47
3Fgmccntzx1: 但是那個 `func` 並不在 logger 內08/22 10:47
4Fgmccntzx1: 你可以看上一篇我貼的那個,不過還是等原 PO 說明吧08/22 10:48
5Fgmccntzx1: 對,我對後來回文的理解是這樣08/22 10:54
6Fgmccntzx1: 只是這種做法很少見,所以我才想說等原 PO 說明他實際08/22 10:55
7Fgmccntzx1: 上想做什麼功能08/22 10:55
8Fgmccntzx1: 一般來說也會用類似你這種的方式或前篇 TitanEric 提到08/22 10:56
9Fgmccntzx1: 的 decorator 去做,因為這樣也能處理 caller argument08/22 10:57
[問題] miniconda torch 版本控管
[ Python ]19 留言, 推噓總分: +8
作者: st1009 - 發表於 2020/08/21 00:08(5年前)
3Fgmccntzx1: 你有先打 conda activate [ENV_NAME] 嗎?08/21 01:03
[問題] imwrite error
[ Python ]23 留言, 推噓總分: +2
作者: s1010257 - 發表於 2020/07/15 22:17(5年前)
7Fgmccntzx1: source: https://git.io/JJGQ9 這行在檢查要寫出的07/16 22:09
8Fgmccntzx1: 資料 _img 是不是空的陣列。所以原因應該在 catch.py07/16 22:11
9Fgmccntzx1: 裡面。檢查一下為了取得 `cropImg` 而找出的 `x1`,07/16 22:15
10Fgmccntzx1: `y1`, `hight`, `width` 哪個是造成07/16 22:16
11Fgmccntzx1: `img[y1:y1+hight, x1:x1+width]` 為空的原因。07/16 22:17
12Fgmccntzx1: 題外話: 根據你給的部分程式碼,`x2 == x1+width`,所07/16 22:22
13Fgmccntzx1: 以寫成 `x1:x1+width` 是不是多此一舉? `y2` 同理07/16 22:24
14Fgmccntzx1: 找到一個可能的根本原因。你去看一下 minAreaRect 的07/16 22:42
15Fgmccntzx1: 說明,它有提到回傳的 rotatedRect 可能包含負數,如07/16 22:46
16Fgmccntzx1: 這篇問題所示 https://stackoverflow.com/q/4727230607/16 22:47
17Fgmccntzx1: 上面那篇問題中,用 minAreaRect 找出結果的右上角超出07/16 22:49
18Fgmccntzx1: 圖片的範圍,也就是該點的 y < 0。07/16 22:51
19Fgmccntzx1: 所以你要檢查你的圖片是否也會造成這種情況,讓你的07/16 22:52
20Fgmccntzx1: `x1`, `y1` 變成負數,導致 `img[y1:y2, x1:x2]` 為空07/16 22:55
23Fgmccntzx1: OK (・ω・)b07/17 18:59
[問題] 在執行for迴圈時,有時候會停下來
[ Python ]30 留言, 推噓總分: 0
作者: yeahhuman - 發表於 2020/07/17 06:21(5年前)
1Fgmccntzx1: 你是用 cmd 跑的嗎?如果是,原因是因為在 win10 中07/17 06:44
2Fgmccntzx1: cmd 有一個新的功能 QuickEdit mode,開啟的時候只要07/17 06:46
3Fgmccntzx1: 游標有點到 console 就會進入這個 mode,進而使07/17 06:47
4Fgmccntzx1: process 被暫停。07/17 06:48
5Fgmccntzx1: 如果不是上面這種情況,再麻煩你提供更詳細一點的描述07/17 06:54
6Fgmccntzx1: 。例如:是因為電腦休眠而停止或是其他原因?07/17 06:55
14Fgmccntzx1: 以目前的資訊來看,最有可能的還是 QuickEdit mode07/17 18:55
15Fgmccntzx1: 造成的,情況如 https://i.imgur.com/eG5KMua.gif07/17 18:55
16Fgmccntzx1: 如果你想確認是這原因的話,你可以維持目前的操作方式07/17 18:55
17Fgmccntzx1: (不把 QuickEdit mode 關掉)然後在下一次遇到同07/17 18:56
18Fgmccntzx1: 樣的情況時,看看那個卡住的視窗頂端的名稱列前面是否07/17 18:56
19Fgmccntzx1: 多了 "選取" 兩個字。如果是的話,就確實是 QuickEdit07/17 18:56
20Fgmccntzx1: mode 的問題。07/17 18:56
21Fgmccntzx1: 如果不想把時間浪費在這上面的話,就直接把 QuickEdit07/17 18:56
22Fgmccntzx1: mode 關掉,或著改用其他的 terminal (e.g. ConEmu,07/17 18:56
23Fgmccntzx1: cmder...)。之後還有遇到類似的情況,再更新這篇文章吧07/17 18:57
24Fgmccntzx1: 另外,Windows 上的 anaconda promt 預設是用07/17 18:57
25Fgmccntzx1: cmd.exe 去執行 Anaconda3\Scripts\activate.bat07/17 18:57
26Fgmccntzx1: 。除非把那個捷徑的 `內容 -> 目標` 前面改成用其他07/17 18:57
27Fgmccntzx1: terminal 執行,不然一樣都是在 cmd.exe 上跑。07/17 18:57
28Fgmccntzx1: 然後,修正一下, QuickEdit mode 很早就有了,只是在07/17 18:57
29Fgmccntzx1: win10 的預設值變成 true。07/17 18:57
[問題] anaconda裡面的NoBaseEnvironmentError
[ Python ]40 留言, 推噓總分: +2
作者: tiramisu0225 - 發表於 2020/02/02 09:53(6年前)
25Fgmccntzx1: 如果是這種情況的話,建議你從 ~/.bash_profile 去處理02/04 14:15
26Fgmccntzx1: 在 ~/.bash_profile 裡加入這兩行:02/04 14:16
27Fgmccntzx1: PATH=$HOME/anaconda3/bin:$PATH02/04 14:17
28Fgmccntzx1: export PATH02/04 14:17