'gbk' codec can't decode byte 0xff in position 0

使用 open() 报错

  File "E:\python3\di1gexiangmu20231219\ex20.py", line 10, in print_all
    print(f.read())
          ^^^^^^^^
UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 0: illegal multibyte sequence

默认情况下,open()命令打开文本内容时,采用的编码方式为gbk或者UTF-8。
而在ShellPower命令行中使用echo创建.txt文件时,编码默认为UTF-16。
故我们在获取文件内容时应保持一致,open()内固定encoding为UTF-16。

print(f.read(), encoding = "UTF-16")

 

posted @ 2024-01-11 15:15  中年二班  阅读(97)  评论(0编辑  收藏  举报