【发布时间】:2020-11-08 22:00:38
【问题描述】:
我目前正在制作一份关于 csv 和使用 python 编程的问卷。我试图让我的代码循环通过我的电子表格中的第一列,并且只打印具有与用户在这种情况下选择的内容相对应的问题,1 代表地球或 2 代表动物......
以下是我到目前为止的代码,但是当我遍历这段代码时,如果数字不等于 1,它不会中断。我还尝试创建一个变量,询问用户输入哪个主题他们想挑选。但是当我运行程序时,无论用户输入 1 还是 2,只有最后一个问题会打印 5 次,只有 csv 文件底部的问题会打印 5 次。
这是我的代码!!
with open('questionnaire.csv') as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
for row in csv_reader:
key = row[0]
subject = row[1]
question = row[2]
option1 = row[3]
option2 = row[4]
option3 = row[5]
option4 = row[6]
prompt = "Which option do you pick? "
answer = row[7]
user_prompt = (f"" + question + "\n" + option1 + "\n" + option2 + "\n" +
option3 + "\n" + option4 + "\n" + prompt)
for key in row[0]:
if key == '1':
print(key)
else:
break
questionnaire = input(user_prompt)
【问题讨论】:
-
密钥的类型是什么?
-
显示为字符串
-
当你说循环没有中断时,你怎么知道?是不是因为你从一个不是 1 的数字开始,它仍然会打印一些东西?