设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 12675|回复: 1
打印 上一主题 下一主题

33课中遇到不识别中文的问题

[复制链接]

1

主题

0

好友

17

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2018-4-17 10:19:36 |只看该作者 |正序浏览
本帖最后由 jzhan030 于 2018-4-17 10:20 编辑

在33课中进行文件中数据的处理,
1:首先要将文件打开并读取,文件内容如下:
  • #-- scores.txt
  • 刘备 23 35 44 47 51
  • 关羽 60 77 68
  • 张飞 97 99 89 91
  • 诸葛亮 100
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自动识别中文。不再出现上述问题。谢谢


回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2018-4-18 00:12:36 |只看该作者
生成的文件也要加上encoding
windows默认是gbk,不是utf8
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-23 06:57 , Processed in 0.014493 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部