问题是,我最近从 Windows 切换到 Ubuntu,我的一些用于分析数据文件的 python 脚本给了我错误,我不确定如何正确解决。
我当前仪器的数据文件输出如下:
[Header]
有关仪器等的各种信息
[Data]
状态、代码、温度、字段等............
0,0,300,0.013等...
所以基本上,这段代码的目的是读取数据文件并解析出从 [Header] 到 [Data] 的所有信息,并开始在适当的行读取真实数据,无论标题如何排列,因为不同的仪器有不同的标头。
f = open('file.dat')
lines = f.readlines()
i = 0
while (lines[i]!="[Data]\n"):
i+=1
i = i + 2
此代码在 Windows 中运行良好,但在 Ubuntu 中,值i
始终占据特定数据文件中的总行数。所以我知道问题在于“[Data]\n”行的处理。谢谢你的帮助。
如果在默认文本模式下打开文件,则在 Windows 上 \r\n 在读取时会转换为 \n。在 Linux 上这不会发生。您的数据文件可能有 \r\n,尤其是在 Windows 上创建的数据文件。使用通用换行模式代替:
open(filename, 'rU')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)