使用python的readlines时忽略last n
我有一个我从中读取的文件,如下所示:
1 value1
2 value2
3 value3
该文件在最后一行中可能有也可能没有尾随 n。
我正在使用的代码效果很好,但如果有一个尾随 n它失败了。
什么是抓住这个的最好方法?
我的代码供参考:
r=open(sys.argv[1], 'r');
for line in r.readlines():
ref=line.split();
print ref[0], ref[1]
哪一个会失败的:
Traceback(最近一次调用最后一次):
文件“./test”,第14行,in
print ref [0],ref [1]
IndexError:列表索引超出范围
没有找到相关结果
已邀请:
2 个回复
到街客核
谦响局豢报
终止,
都会给出相同的结果。 请注意,由
终止的文件中的最后一行是USUAL行为,并且人们偶尔会被未被终止的行打扰。 如果你做的事情如下:
代替
你将能够自己检测到发生了什么,而不是让我们猜测。 如果@Mark Byers推测,你的最后一行是空的或只包含空格,你可以通过这个更简单的代码忽略该行(和所有其他这样的行):
还请考虑在最后一行中只有一个字段,而不是0或2的可能性。