我正在做课程,要求我制作一个测验程序,在该程序中创建用户帐户并将其与个人信息一起存储到CSV中。然后,我需要从CSV文件中读取并读取要运行的模块的问题和答案,然后将测试数据存储到存储所有帐户信息的CSV中。
我已成功写入CSV,但是我在阅读时遇到问题。 CSV设置为2列,A1,A2,A3,A4和A5中的5行是存储问题的位置,B1,B2,B3,B4和B5是存储行中问题的答案的位置。目前我正在尝试将问题打印到输入中,然后使用if语句根据我存储在CSV中的答案进行检查。
目前我在打印单元格中的所有内容时遇到问题,我不得不使用范围。我的python代码的一部分如下......
import csv
with open("questions.csv", 'r') as f:
for row in f:
question1 = row[0:94]
answer1 = row[95]
print(question1)
print(answer1)
如何将整个单元格打印到输入中而无需在行中进行范围?
答案 0 :(得分:0)
您已导入csv
模块,但从未使用过它,请尝试以下操作:
import csv
with open('questions.csv', 'r') as f:
reader = csv.reader(f)
for row in reader:
print('Question: {}'.format(row[0]))
print('Answer: {}'.format(row[1]))
答案 1 :(得分:0)
在您的代码中,row
是一个字符串,其中包含以逗号分隔的当前行中的所有单元格。
你想这样做:
row = row.split(',').rstrip()
所以现在row[0]
将是第一个col的全部内容,依此类推......
或者你可以按照@Burhan Khalid
的建议使用csv.reader