社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python处理Windows记事本utf8编码文件要注意的坑

Python小屋 • 6 年前 • 516 次点击  
封面图片:《Python程序设计基础(第2版)》,ISBN:9787302490562,董付国,清华大学出版社
图书详情:
配套资源:用书教师可以免费获取教学大纲、教案、课件、源码、习题答案、课堂管理与考试系统。
中国大学MOOC
https://www.icourse163.org/learn/enroll/CCEC-1449771164
智慧树网慕课
https://coursehome.zhihuishu.com/courseHome/2071947
===============
Python相关课程教材选用参考与建议
董付国老师Python在线课程资源使用方法
===============

感谢西北师大文玉锋老师发现并提供这个有意思的问题。

以Win 10为例,假设当前文件夹中有个ANSI编码的文本文件data.txt,其中包含若干行文本,每行存放一个整数,例如:

编写程序读取其中的每行数字,加5之后输出,代码如下:

接下来,使用记事本打开文件data.txt,然后另存为UTF8编码格式,

然后修改代码,使用UTF8编码格式,代码出错,

根据异常信息可以发现,莫名其妙多出来一个字符,\ufeff,然而输出文件内容时却又没有这个符号,例如,

出现这个错误的原因在于,Windows系统的记事本程序转换为UTF8时,会在文件头增加BOM(Byte Order Mark),也就是标志位\ufeff,这个符号使用print()输出时不可见,使用repr()函数转换一下,

Windows记事本转换为UTF8编码时加BOM本身并没有对与错,但是没有明确说明就不合适了,还是notepad++人性化一些,明确对不带BOM的utf8和带BOM的utf8做了区分,例如,

不管怎么样,明白了原因之后,处理就容易了,可以手动删除这个符号,

或者,改用utf-8-sig编码格式来读取内容,



温馨提示
关注本公众号“Python小屋”,通过菜单“最新资源”==>“历史文章”可以快速查看分专题的1000篇技术文章列表(可根据关键字在页面上搜索感兴趣的文章),通过“最新资源”==>“微课专区”可以免费观看500节Python微课,通过“最新资源”==>“培训动态”可以查看近期Python培训安排,通过“最新资源”==>“教学资源”可以查看Python教学资源。
---董付国老师Python系列图书---
友情提示:不建议购买太多,最好先通过京东、当当、天猫查阅图书了解目录和侧重点,然后再选择购买适合自己的书。
(1)《Python程序设计(第2版)》(ISBN:978-7-302-43651-5),清华大学出版社,2016年8月出版,2019年度清华大学出版社畅销图书
(2)《Python可以这样学》(ISBN:978-7-302-45646-9),清华大学出版社,2017年2月
(3)《Python程序设计基础(第2版)》(ISBN:978-7-302-49056-2)清华大学出版社,2018年1月出版,2019年度清华大学出版社畅销图书
(4)《中学生可以这样学Python》(ISBN:978-7-302-48039-6)清华大学出版社
(5)《Python程序设计开发宝典》(ISBN:978-7-302-47210-0)清华大学出版社,2018年10月
(6)《玩转Python轻松过二级》(ISBN:978-7-302-49916-9)清华大学出版社,2018年5月
(7)《Python程序设计基础与应用(ISBN:978-7-111-60617-8),机械工业出版社,2018年9月
(8)Python程序设计实验指导书》(ISBN:9787302525790),清华大学出版社,2019年4月
(9)《Python编程基础与案例集锦(中学版)(ISBN:978-7-121-35539-4),电子工业出版社,2019年4月
(10)大数据的Python基础》(ISBN:978-7-111-62455-4),机械工业出版社,预计2019年5月出版
(11)译作《Python程序设计》,机械工业出版社(华章),2018年11月出版
(12)繁体版《Python也可以这样学》,台湾博硕文化股份有限公司,2017年10月出版,本书为《Python可以这样学》在台湾发行的繁体版,两本书内容一样,不建议重复购买
(13)《Python程序设计实例教程》(ISBN:978-7-111-63198-9),机械工业出版社
(14)《Python数据分析、挖掘与可视化》(ISBN:978-7-115-52361-7),人民邮电出版社,2019年12月

Python相关课程教材选用参考与建议
董付国老师Python在线课程资源使用方法
董付国老师6本Python教材PDF版免费阅读
《Python数据分析、挖掘与可视化》前3章书稿PDF免费阅读
《Python程序设计基础与应用》前3章书稿PDF免费阅读
号外号外--Python小屋刷题神器上线啦
《中学生可以这样学Python》84节微课免费观看地址

相关阅读

Python提取Word文档中所有脚注文本

Python批量提取docx格式Word文档中所有批注

Python批量提取docx格式Word文档中所有文本框内的文本

Python读取docx文档中所有标题文本

Python合并多个Word文件的4种方法和1种不写代码的方法

一文学会Python标准库struct序列化与反序列化

Python操作PowerPoint文件:批量导入图片(加强版)

Python读取并重新组织Excel文件数据案例一则

使用Python把Word文档转换为图片式不可修改的PDF文件

使用Python合并多张JPG图片为一个PDF文件

使用Python合并任意多个PDF文件

Python提取docx文档中嵌入式图片和浮动图片的又一种方法

Python提取docx文档中所有嵌入式图片和浮动图片

Python提取.ipynb文件中的Python代码保存为.py文件

Python根据身份证号计算年龄和退休时间并保存Excel文件

Python读写Excel文件中指定区域单元格内容

一文230行代码学会使用Python操作Excel文件

Python操作Word文档的节属性和页眉/页脚

Python控制Word文件中段落格式与文本格式

Python把PDF文件中每页内容分离为独立图片文件

Python实现Excel与Word文件中表格数据的导入导出

Python+pandas分离Excel数据到同一个Excel文件中多个Worksheets

使用Python预处理机器学习需要的手写体数字图像文件数据集

Python批量修改Word文档中特定关键字的颜色

Python实现中文文档的简体与繁体互相转换

Python操作Excel文件汇总数据案例一则

Python文件操作与matplotlib数据可视化案例一则

Python文件操作的几个要点与示例

Python统计Excel文件中超市营业额明细数据

Python查找包含指定字符串的所有Office文档

Python查找包含指定字符串的所有文件

Python提取Word文档中所有超链接地址和文本

Python课程期末考试编程题自动批卷原理与实现模板

使用Python批量提取并保存docx文档中的图片

Python筛选Excel文件中超过一定年龄的人员信息

Python批量导入图片到Word文件

把Python程序的输出和异常信息自动写入文件

Python操作Excel文件:插入一列数据

Python使用pandas合并多个Excel文件

Python处理文本文件案例一则

批量统计多个PPTX文件中幻灯片总数量

Python批量转换ppt文件为pptx文件

使用Python为PDF文件批量添加水印的方法及进一步思考

Python使用三种方法批量修改记事本文件编码格式

Python批量生成垃圾邮件内容

Python批量合并带有合并单元格的Excel文件

Python文件操作小案例:交替合并两个记事本文件

Python查找Word文件中红色和加粗的文字(附元宵节送书活动中奖名单)

使用Python写入docx文件并控制字体颜色

Python批量提取Word文件题库中的答案

Python+pywin32批量转换Word文件为PDF文件

使用Python获取Excel文件中单元格公式的计算结果

Python操作Excel文件中多WorkSheet模拟数据库内连接查询

使用Python操作PowerPoint文件中的表格

使用Python批量修改PPTX文件中文本框格式

Python批量导入图片生成能治疗颈椎病的HTML5版课件

Python批量导出多个PPT/PPTX文件中每个幻灯片为独立JPG图片

Python批量导入图片生成PowerPoint 2007+文件

Python批量设置多个Excel文件页眉页脚的源码

Python批量修改Excel文件格式:加粗、颜色交替、渐变背景色填充

Python模拟Linux/Mac OS工具grep和Windows工具findstr

Python使用marshal模块操作二进制文件

Python操作docx文档设置居中并创建表格

Python+pickle读写二进制文件小案例

Python批量整理文件名小案例(附公众号第一批赠书活动中奖名单)

Python统计多个Powerpoint文件中幻灯片总数量

Python编写编程作业批量自动打分程序的思路与实现

详解Python字符串编码格式

使用Python读写文本文件内容

Python批量提取PDF文件中的文本

Python批量检查网页是否被注入其他页面

Python网页注入挂马

几行Python代码打造自己的磁盘垃圾文件清理器

使用Python批量随机化文件名

Python把docx文档中的题库导入SQLite数据库

使用Python判断文件是否为PE文件

Python操作高版本Excel文件:颜色、边框、合并单元格

Python使用模糊哈希值比较文件相似度

Python压缩新文件到已有ZIP文件

Python生成大量随机人员信息

Python生成强密码字典文件

Python破解ZIP或RAR文件密码

Python打造文件MD5值计算器

Python合并Excel2007+中多个WorkSheet

Python提取docx文档中例题、插图、表格清单

Python读写CSV格式文件

Python+shelve读写二进制文件


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/57334