看板 Python 關於我們 聯絡資訊
哈囉大家好,肥宅工作上每天都在寫Python 可是最近發現我有時候會花很多時間在解決小Bug。 例如之前寫的Socket程式就出現下面問題 byteString = b'apple' print(len(byteString)) # 答案是5 byteString = str(byteString) print(len(byteString)) # 答案是8 當初手殘把收過來的資料轉成str,結果抓下來的圖檔開不起來。 最後是發現伺服器跟客戶端的檔案大小不一樣,才找到問題。 可是其他的程式語言在上述情況下根本不可能編譯成功。 Python相較於其他程式語言,是不是語法比較不嚴謹?? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.9.41 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1550755043.A.817.html ※ 編輯: zo6596001 (220.137.9.41), 02/21/2019 21:18:13
MAGICXX: 4 02/21 22:05
DavisX: 4 02/21 22:26
windclara: 4 02/21 22:35
as30385438: 你聽過javascript嗎 02/21 22:48
jasonfghx: 6666666666666666666666666666666666 02/21 23:05
eight0: 不能編譯成功?能舉個例子嗎 02/21 23:21
djshen: 你確定是轉成str? 02/22 00:01
djshen: 每天都在寫你們怎麼不會print(byteString)看看? 02/22 00:02
Raymond0710: 你了解 str(), __str__ 的意義嗎? 02/22 00:28
Raymond0710: 在py3中 bytes 轉成 str 要用 decode 不是str() 02/22 00:30
Sunal: 文件沒看清楚,特性不夠熟悉 02/22 08:10
MOONY135: 自己習慣不好 怪編譯器 02/22 09:00
rofellosx: 你使用的不嚴謹 02/22 09:29
TitanEric: 語法先熟悉 02/22 09:48
agario: 如果你改用 C++ 拿到 char[] 然後用奇怪的 function 把他 02/22 09:59
agario: 轉成 UTF16 encoded 的 char[] 還不是會變不一樣 02/22 10:00
lajji: 嚴謹不嚴謹 使用者的差別比較大 02/22 11:34
s860134: 只有強型別和弱型別 自己寫錯怪語言 不爽不要用 嘻嘻 02/22 12:12
froce: 你沒搞懂python的字串轉換,亂用當然不對。 02/23 10:39
froce: str(b'apple')出來就是b'apple'這個字串,長度當然是8 02/23 10:40
froce: 上面有提到,用decode才是正解 02/23 10:41
y3k: 不嚴謹是的確的阿XDD 但是很多血python的就愛這味 02/25 12:23
y3k: 要不是某些API用Python發布 我個人還真想用Java或TS寫... 02/25 12:24
newstarisme: 很嚴謹啊... indent要求很嚴格 02/25 19:47
Sunal: php才是最好的語言 02/25 22:37
lance8537: javascript: a=10 + ”12" 求a? 02/26 16:49