2017-10-11 70 views
4

下面哪一行是正確的?我知道所有這些可用的編碼?utf16 vs utf-16

with open(filename, 'w', encoding='utf16') as fp: 
with open(filename, 'w', encoding='utf-16') as fp: 
+0

如果我回答了您的問題,請將我的答案標記爲正確。謝謝! –

回答

3

有趣的問題。我做了一些搜索,它看起來像你可以在這裏找到所有的選項:https://docs.python.org/3/library/codecs.html#standard-encodings

所以在這種情況下,既不!它應該是utf_16。儘管如此,憑藉我在Python中的經驗,如果他們清理了您提供的arg,那麼無論如何它都會工作,我不會感到驚訝。從鏈接看來,它們看起來像是這樣!所以utf-16應該是一個有效的別名。

請注意,只有大小寫不同或使用連字符而不是下劃線的拼寫替代方法也是有效的別名;因此,例如'utf-8'是'utf_8'編解碼器的有效別名

編輯 - 這絕對是正確的鏈接。 https://docs.python.org/3.4/library/functions.html#open這是open鏈接,您給它的這句話

見支持的編碼列表中的編解碼器模塊的文檔。

+0

^,是的,正是我所指的。謝謝你拉出來。 –

+1

更好的答案:)好吧,如果我們可以概括8至16和32當然:) –