Crossin的编程教室

标题: 33课中遇到不识别中文的问题 [打印本页]

作者: jzhan030    时间: 2018-4-17 10:19
标题: 33课中遇到不识别中文的问题
本帖最后由 jzhan030 于 2018-4-17 10:20 编辑

在33课中进行文件中数据的处理,
1:首先要将文件打开并读取,文件内容如下:
2:将文件中数字加总,然后输入形成以下文件:
#----result.txt
刘备   :200
关羽   :205
张飞   :376
诸葛亮   :100


然后我遇到的问题是scores.txt中的中文无法识别
Traceback (most recent call last):
  File "C:/Users/win10/PycharmProjects/python3/read the data.py", line 3, in <module>
    lines = f.readlines()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa4 in position 4: illegal multibyte sequence
我把原来的
f = open(‘scores.txt’)
调整成:
f = open('scores.txt',encoding='utf8')
文件终于可以运行出预期结果。但是在新生成的文件result.txt中。中文还是以乱码的形式出现。


#----result.txt
����    :200
����   :205
�ŷ�    :356
�����  :100
问题如下:
1:怎么才能在输入的结果中正常出现中文
2:有没有一劳永逸的办法,使我的电脑python3自动识别中文。不再出现上述问题。谢谢



作者: crossin先生    时间: 2018-4-18 00:12
生成的文件也要加上encoding
windows默认是gbk,不是utf8




欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5