我这样做是为了阅读文件:
import fileinput
for line in fileinput.input('/home/manish/java.txt'):
if not fileinput.isfirstline():
... data = proces_line(line);
... output(data)
由于未定义proces_line,因此抛出错误。
Traceback (most recent call last):
File "<stdin>", line 3, in <module>
NameError: name 'proces_line' is not defined
我必须逐行读取数据并存储在列表中,每行都是列表的单独元素。
答案 0 :(得分:2)
您可以跳过第一行,如下所示:
import fileinput
def output(line):
print(line)
fi = fileinput.input('/home/manish/java.txt')
next(fi) # skip first line
for line in fi:
output(line)
这样可以避免每次在for循环中测试第一行。
要将每行存储到列表中,您可以执行以下操作:
import fileinput
fi = fileinput.input('/home/manish/java.txt')
next(fi) # skip first line
output = list(fi)
fi.close()
print(output)
答案 1 :(得分:1)
你可以试试这个:
fname = '/home/manish/java.txt'
with open(fname) as f:
content = f.readlines()
content
的类型为list
。您可以忽略content[0]
并使用其余部分循环以获取所需数据。
答案 2 :(得分:0)
您正在寻找&#34; readline()&#34;机能的研究。从文件中拉出下一行并截断换行符Python documentation for File Input
用法
For each in openFile:
List += openFile.readline ()
此外,您正在尝试使用不存在的功能。以及被拼写错过。