哈囉大家好,肥宅工作上每天都在寫Python
可是最近發現我有時候會花很多時間在解決小Bug。
例如之前寫的Socket程式就出現下面問題
byteString = b'apple'
print(len(byteString)) # 答案是5
byteString = str(byteString)
print(len(byteString)) # 答案是8
當初手殘把收過來的資料轉成str,結果抓下來的圖檔開不起來。
最後是發現伺服器跟客戶端的檔案大小不一樣,才找到問題。
可是其他的程式語言在上述情況下根本不可能編譯成功。
Python相較於其他程式語言,是不是語法比較不嚴謹??
作者:
MAGICXX (逢甲阿法)
2019-02-21 22:05:004
作者:
DavisX 2019-02-21 22:26:004
作者: windclara (null) 2019-02-21 22:35:00
4
6666666666666666666666666666666666
作者:
eight0 (欸XD)
2019-02-21 23:21:00不能編譯成功?能舉個例子嗎
作者:
djshen (djshen)
2019-02-22 00:01:00你確定是轉成str?每天都在寫你們怎麼不會print(byteString)看看?
你了解 str(), __str__ 的意義嗎?在py3中 bytes 轉成 str 要用 decode 不是str()
作者:
Sunal (SSSSSSSSSSSSSSSSSSSSSSS)
2019-02-22 08:10:00文件沒看清楚,特性不夠熟悉
作者: agario (Agar.io) 2019-02-22 09:59:00
如果你改用 C++ 拿到 char[] 然後用奇怪的 function 把他轉成 UTF16 encoded 的 char[] 還不是會變不一樣
作者:
lajji (喇機)
2019-02-22 11:34:00嚴謹不嚴謹 使用者的差別比較大
作者:
s860134 (s860134)
2019-02-22 12:12:00只有強型別和弱型別 自己寫錯怪語言 不爽不要用 嘻嘻
作者:
froce (froce)
2019-02-23 10:39:00你沒搞懂python的字串轉換,亂用當然不對。str(b'apple')出來就是b'apple'這個字串,長度當然是8上面有提到,用decode才是正解
作者:
y3k (激流を制するは静水)
2019-02-25 12:23:00不嚴謹是的確的阿XDD 但是很多血python的就愛這味要不是某些API用Python發布 我個人還真想用Java或TS寫...
作者:
Sunal (SSSSSSSSSSSSSSSSSSSSSSS)
2019-02-25 22:37:00php才是最好的語言
javascript: a=10 + ”12" 求a?