在Python3中打开文件时如何避免编码参数

时间:2016-10-06 16:24:08

标签: python unicode encoding python-import

当我在Windows设备上处理.txt文件时,我必须保存为:ANSI,Unicode,Unicode big endian或UTF-8。当我在OSX设备上运行Python3并尝试导入和读取.txt文件时,我必须做以下几点:

with open('ships.txt', 'r', encoding='utf-8') as f:
    for line in f.readlines():
        print(line)

我是否应该使用特定格式对Windows设备上的.txt文件进行编码,以避免在Python中打开文件时添加编码参数?

1 个答案:

答案 0 :(得分:0)

在OSX设备上调用locale.getpreferredencoding(False)。这是用于读取该设备上的文件的默认编码。在Windows上保存该编码,您不需要在OSX设备上指定编码。

但正如Zen of Python所说,"明确比隐含更好。"既然您知道编码,为什么不指定它呢?