python基础IO--读写文件编码问题

window环境下,python读写磁盘目录下的文件。

  • 内容是中文:
微扑克是腾讯爸爸旗下的一款产品,目前仅支持微信登录,
游戏对象也仅针对于好友(即没有在线随机进去其
他不认识的网友开的房间)下面来分析一下,
它是如何在众多线上德扑类产品中脱颖而出的吧。

  • 代码部分
# encoding = utf-8
data = open("d:\\Users\\Administrator\\PycharmProjects\\untitled1\\exception_dir\\sketch.txt", "r")
print(data.readline(), end="")
  • 出现异常
Traceback (most recent call last):
  File "D:/Users/Administrator/PycharmProjects/untitled1/exception_dir/read_file.py", line 5, in 
    print(data.readline(), end="")
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 2: illegal multibyte sequence
  • 中文默认的编码是gbk格式,这里读写要指定open的编码格式为utf-8,代码修改成:
# encoding = utf-8

data = open("d:\\Users\\Administrator\\PycharmProjects\\untitled1\\exception_dir\\sketch.txt",  
                                                                                     mode='r', encoding='utf-8')
print(data.readline(), end="")
  • 这次正常读写,done
"C:\Program Files (x86)\Python36-32\python.exe" D:/Users/Administrator/PycharmProjects/untitled1/exception_dir/read_file.py
微扑克是腾讯爸爸旗下的一款产品,目前仅支持微信登录,

Process finished with exit code 0

你可能感兴趣的:(python基础IO--读写文件编码问题)