python学习2——读取报错及解决
编码内容(简单的读取文件并输出)
from sys import argv
filename = argv[0]
txt = open(filename, 'r', encoding='UTF-8')
print("here's your file %r:" % filename)
// 打印输出文件内容
print(txt.read())
txt.close()
问题一
一开始按照参考资料上的写的来编码
filename = argv
后来运行时爆出了错误TypeError: expected str, bytes or os.PathLike object, not list
改正成了filename = argv[0],这样两边都是str,运行就没问题了。
问题二
python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multibyte sequence"
解决办法1.(推荐)
可以让包含汉字的文件能正常输出,
FILE_OBJECT= open('order.log','r', encoding='UTF-8')
解决办法2.
以二进制输出打开文件
FILE_OBJECT= open('order.log','rb')
问题三
上边两个问题都解决后,运行发现输出的不是想要的TXT文件内容,反而是当前编码内容,

浙公网安备 33010602011771号