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

作者:清穆2013 时间:2022-02-01 13:13:46 

      最近,接手的项目里,提供的数据文件格式简直让人看不下去,使用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 包含汉字的文件读写之每行末尾加上特定字符网站的支持!

来源:http://www.cnblogs.com/QM-12/archive/2016/12/12/6163810.html

标签:python,文件读写,字符
0
投稿

猜你喜欢

  • Django Channels 实现点对点实时聊天和消息推送功能

    2022-04-03 10:37:56
  • 用python实现的去除win下文本文件头部BOM的代码

    2021-04-01 08:00:19
  • SQL Server 2005恢复数据库详细图文教程

    2024-01-14 10:18:02
  • 封装了一个Java数据库访问管理类

    2024-01-25 04:52:15
  • 数据库中两张表之间的数据同步增加、删除与更新实现思路

    2024-01-21 18:50:24
  • javascript函数声明和函数表达式区别分析

    2024-04-23 09:09:09
  • 在IE中使用高级CSS3选择器

    2010-01-22 15:20:00
  • 完美解决Python matplotlib绘图时汉字显示不正常的问题

    2023-09-28 05:30:55
  • golang db事务的统一封装的实现

    2023-07-02 21:01:51
  • 非常不错的SQL语句学习手册实例版第1/3页

    2024-01-25 23:31:01
  • Anaconda环境变量的配置图文详解

    2021-09-11 04:50:26
  • 用Dreamweaver设计Wordpress留言板教程(一)

    2010-03-17 15:44:00
  • 改进SQL Server数据库系统安全五步走

    2009-01-20 11:47:00
  • Linux下编译安装python3步骤

    2021-11-07 17:50:04
  • python3+opencv 使用灰度直方图来判断图片的亮暗操作

    2024-01-01 07:07:23
  • 使用keras实现非线性回归(两种加激活函数的方式)

    2023-07-23 23:33:53
  • Python通过Django实现用户注册和邮箱验证功能代码

    2021-02-21 13:59:03
  • python设置windows桌面壁纸的实现代码

    2023-05-27 02:51:05
  • python自动化之re模块详解

    2021-07-01 19:34:16
  • 43个应当避免的Web设计错误

    2007-09-30 12:57:00
  • asp之家 网络编程 m.aspxhome.com