python的读写文件操作时,有时候会出现一些小问题,详细如下,(原因在前面,解决办法在文末)。
读取txt文件时出现错误反馈如下:
Traceback (most recent call last):File "<pyshell#18>", line 1, in <module>f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 2: illegal multibyte sequence
因为在win系统中创建txt文件时默认编码UTF-8。如下图1所示
而使用python写txt文件时的文件编码为ANSI,而非ASCII,也不是UTF-8。如下图二所示
结果如下图三所示:
所以使用python写入之后再直接读取的时候,能轻松成功读取,如下图四所示:
但是,问题就在于,读取一些普通情况下的txt文件时,会出现如下图五结果:
错误反馈说解码错误。
解决办法是,打开文件时,使用utf-8编码打开文件,读取时就能够读出来啦。如下图五所示: