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