Python 包含汉字的文件读写之每行末尾加上特定字符


Posted in Python onDecember 12, 2016

      最近,接手的项目里,提供的数据文件格式简直让人看不下去,使用pandas打不开,一直是io error.仔细查看,发现文件中很多行数据是以"结尾,然而其他行缺失,因而需求也就很明显了:判断每行的结尾是否有",没有的话,加上就好了。

采用倒叙的方式好了,毕竟很多人需要的只是一个快速的解决方案,而不是一个why. 解决方案如下:

b = open('b_file.txt', w)
 with open('a_file.txt', 'r') as lines:
  for line in lines:
   line = line.strip()
   if not line.endswith(r'"'):
    line += r'"'
   line += '\n'
   b.write(line) 
 b.close()
 a.close()

其中整个过程的关键在于

line = line.strip()

之前我偷懒,直接使用省去了上面那行,结果在判断条件栽了跟头,程序认为每一行都不是以"结尾:

if not line.endswith(r'"')

硬着头皮试上去,重写:

for line in open(data_path+'heheda.txt', 'r'):
 if not line[-2] == r'"':
  print line
  line = line[:-1] + r'"' + line[-1:]
  print line

      此时判断条件为 if not line[-2] == r'"',这样才能得到除最后一行之外的正确结果。众所周知的原因,在windows系统中,文件的回车符是"\r\n",因而,在没有strip()处理好回车符的时候,需要手动在每一行的结尾前移一个字节进行判断每行的末尾。而对于文件的最后一行,一般情况下不是回车符作为结尾,毕竟不要换行了嘛。因而line[-2]则定位到了最后一个汉字的中间,将\xx\xx,硬写成了\xx"\xx,使得最后一个字显示错误。

以上所述是小编给大家介绍的Python 包含汉字的文件读写之每行末尾加上特定字符,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python实现文件路径和url相互转换的方法
Jul 06 Python
pycharm安装图文教程
May 02 Python
Python实现自动发送邮件功能
Mar 02 Python
Python实现PS滤镜的万花筒效果示例
Jan 23 Python
python生成lmdb格式的文件实例
Nov 08 Python
django rest framework 实现用户登录认证详解
Jul 29 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
Aug 17 Python
python使用 cx_Oracle 模块进行查询操作示例
Nov 28 Python
python游戏开发的五个案例分享
Mar 09 Python
利用python控制Autocad:pyautocad方式
Jun 01 Python
利用For循环遍历Python字典的三种方法实例
Mar 25 Python
什么是Python装饰器?如何定义和使用?
Apr 11 Python
详解python3百度指数抓取实例
Dec 12 #Python
python实现多线程抓取知乎用户
Dec 12 #Python
浅谈Python类里的__init__方法函数,Python类的构造函数
Dec 10 #Python
详解常用查找数据结构及算法(Python实现)
Dec 09 #Python
详解Python装饰器由浅入深
Dec 09 #Python
python利用正则表达式提取字符串
Dec 08 #Python
基于python的七种经典排序算法(推荐)
Dec 08 #Python
You might like
给多个地址发邮件的类
2006/10/09 PHP
PHP的变量总结 新手推荐
2011/04/18 PHP
PHP中Header使用的HTTP协议及常用方法小结
2014/11/04 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
js 解决“options为空或不是对象”
2008/12/22 Javascript
用AJAX返回HTML片段中的JavaScript脚本
2010/01/04 Javascript
js动态加载以及确定加载完成的代码
2011/07/31 Javascript
基于jQuery选择器的整理集合
2013/04/26 Javascript
Nodejs实现批量下载妹纸图
2015/05/28 NodeJs
JavaScript实现复制内容到粘贴板代码
2016/03/31 Javascript
js不间断滚动的简单实现
2016/06/03 Javascript
关于input全选反选恶心的异常情况
2016/07/24 Javascript
让微信小程序支持ES6中Promise特性的方法详解
2017/06/13 Javascript
React Native之TextInput组件解析示例
2017/08/22 Javascript
微信小程序实现单选功能
2018/10/30 Javascript
vuejs移动端实现div拖拽移动
2019/07/25 Javascript
简单介绍Python中的decode()方法的使用
2015/05/18 Python
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
Python数据结构与算法之图结构(Graph)实例分析
2017/09/05 Python
用Python写一段用户登录的程序代码
2018/04/22 Python
python 实现一次性在文件中写入多行的方法
2019/01/28 Python
Python单元和文档测试实例详解
2019/04/11 Python
python实现合并多个list及合并多个django QuerySet的方法示例
2019/06/11 Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
2019/07/19 Python
python3.6.8 + pycharm + PyQt5 环境搭建的图文教程
2020/06/11 Python
详解通过HTML5 Canvas实现图片的平移及旋转变化的方法
2016/03/22 HTML / CSS
HTML5 video进入全屏和退出全屏的实现方法
2020/07/28 HTML / CSS
财务分析个人的自荐书范文
2013/11/24 职场文书
机械专业应届生求职信
2013/12/12 职场文书
营销总经理岗位职责
2014/02/02 职场文书
科级干部考察材料
2014/02/15 职场文书
《彭德怀和他的大黑骡子》教学反思
2014/04/12 职场文书
我的中国梦主题教育活动总结
2015/05/07 职场文书
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers
向Spring IOC 容器动态注册bean实现方式
2022/07/15 Java/Android