Python getline()问题

时间:2012-07-12 20:48:41

标签: python file getline

我正在尝试从文件中获取数据并将它们存储在vector中,但我发现了一些困难。 这就是我的Python脚本的样子:

from numpy import array, append
from linecache import getline
print 'read file'
t = []
f = open('file.dat', 'r')
b = getline('f',4).split()
t.append(int(b[0]))

跑完后我得到了信息:

t.append(int(b[0]))
IndexError: list index out of range

当我检查时,b似乎是空的:

>>b
[]

在file.dat的第4行我有数字4,这行只有一个条目。 有谁知道怎么回事?我使用的是2.7 Python版本。

2 个答案:

答案 0 :(得分:1)

我相信您的错误是您错过了使用linecache.getline应该执行的操作:

from numpy import array, append
from linecache import getline
print 'read file'
t = []
b = getline('file.data',4).split()
t.append(int(b[0]))

答案 1 :(得分:0)

getline的第一个参数是文件名。

b = getline('file.data',4).split()