Python - 将每一行放入变量中

时间:2018-04-29 17:03:34

标签: python

我对python很新,我试图寻找解决方案,但似乎无法找到我的确切问题。

问题是如何将正在读取的文件中的每一行放入变量中以供将来使用?

我有一个很好的文件读取,我将其转换为准备好了,但我不知道如何从这里开始。

输出如下:

Who was the fastest formula one driver in the previous race?
VET
HAM
RIC

我想做的是:

for line in PopQuiz:
    Question = line[0]
    Answer1 = line[1]  
    Answer2 = line[1]   
    Answer3 = line[1]

然后从那里我可以在应用程序的其余部分使用变量。

2 个答案:

答案 0 :(得分:2)

最好的方法是将整个文件读入列表:

lines = PopQuiz.readlines()

然后,您可以根据需要访问列表元素。如果你真的需要将这些行放入变量中,你可以通过简单的赋值来完成:

Question = lines[0]
Answers = lines[1:]

在上面的例子中,"问题"将包含第一行和"答案"将包含一个答案列表。您可能还希望从值中删除尾随换行符。你可以用列表理解来做到这一点:

Question = lines[0].strip()
Answers = [x.strip() for x in lines[1:]]

答案 1 :(得分:0)

我想你想要这样的东西:

all_lines = []

with open('file.txt') as fr:
  for line in fr:
    all_lines.append(line)

然后,因为你在第一行有一个问题:

question = all_lines[0]
answers = all_lines[1:]