【发布时间】:2018-03-06 15:04:31
【问题描述】:
我有以下文件:
1 0x000 1555106270.959849 0x02b
0 0x3ff 1555106270.967866 0x02c
0 0x3fe 1555106270.975882 0x02d
0 0x3fd 1555106270.983898 0x02e
0 0x3fc 1555106270.991915 0x02f
0 0x3fb 1555106270.999931 0x000
0 0x3fa 1555106271.007947 0x001
0 0x3f9 1555106271.015964 0x002
0 0x3f8 1555106271.023980 0x003
0 0x3f7 1555106271.031997 0x004
0 0x3f6 1555106271.040013 0x005
0 0x3f5 1555106271.048029 0x006
(可能有更多行)。
我想获取每一行的最后一个字符串,并将其插入到数组中。
我尝试以下方法:
arr_int = []
i = 0
result_file = open('result.txt', 'r')
for line in result_file:
line.split()
arr_int[i] = int(line.split()[-1])
++i
print (arr_int[2])
我收到以下错误:
arr_int[i] = int(line.split()[-1])
IndexError: list assignment index out of range
【问题讨论】:
-
我不确定这是不是问题,但
++i不会增加i -
某处有空行,可能在末尾?
-
@Elliot Roberts- 那是什么?
-
@Klaus D - 没有。
-
i += 1但使用这样的变量通常被认为是非 Python 的。我会做for i, line in enumerate(result_file)
标签: python arrays for-loop line