推 laba5566: isdigit() ?02/18 06:52
isdigit()會回傳boolean,我中途有想用,請問有接續嗎?
※ 編輯: ntumath (140.112.252.182), 02/18/2017 07:02:21
推 Sisssy: [int(i.replace(',','')) if ',' in i else i for i in a]02/18 07:40
→ Sisssy: 但這是假設你的數字都有, 然後你的字串都沒有, XD02/18 07:41
推 Sisssy: [int(i.replace(',','')) if i[0].isdigit() else i for i02/18 07:45
→ Sisssy: in a]02/18 07:45
→ Sisssy: 這樣應該可以 但這需要你的字串都確定不會有數字開頭02/18 07:45
推 Sisssy: [int(i) if float(i).is_integer() else float(i) for i i02/18 07:52
→ Sisssy: in a] 第二個問題02/18 07:52
Sisssy,謝謝你的回答,不過第一個問題我發現我要處理的資料還真的有一些項是數字開
頭的,這些項如果想要繼續保持字串,可以以list comprehension的方式達到嗎?
→ uranusjr: 最好的方法還是你改一下習慣, 每個語言都有慣用的做法02/18 09:23
→ uranusjr: Python 在這裡用 try block 應該是最 idiomatic 的寫法02/18 09:23
※ 編輯: ntumath (140.112.252.182), 02/18/2017 11:42:38
※ 編輯: ntumath (140.112.253.33), 02/18/2017 12:16:13
→ ZolaEmile: [s*s.isalpha() or eval(s.replace(',','')) for s in 02/19 00:11
→ ZolaEmile: a] 02/19 00:11
推 Sisssy: 其實最好還是用try 比較pythonic的作法 XD 02/22 07:55