为什么这个python代码不起作用?

为什么这个python代码不起作用?,python,list,file,loops,csv,Python,List,File,Loops,Csv,我试图在每次用户获得正确答案时加1分,您可以看到我从文件中获取问题和答案,文件设置为先有问题,然后是可能的答案,然后是正确的答案 例:什么是2*2?,4,2,8,6,a 这就是我正在阅读的文件中的内容。每次我运行它,它将通过所有的循环,列表和东西的罚款,但它不会增加1分,每次它是正确的答案。有人看到这部分代码有问题吗 inputtedAnswer = input("Choice (a-d): ") if inputtedAnswer == rightAnswer[0]: score +

我试图在每次用户获得正确答案时加1分,您可以看到我从文件中获取问题和答案,文件设置为先有问题,然后是可能的答案,然后是正确的答案

例:什么是2*2?,4,2,8,6,a

这就是我正在阅读的文件中的内容。每次我运行它,它将通过所有的循环,列表和东西的罚款,但它不会增加1分,每次它是正确的答案。有人看到这部分代码有问题吗

inputtedAnswer = input("Choice (a-d): ")

if inputtedAnswer == rightAnswer[0]:
    score += 1
else:
    score = score

如果看不到正确答案列表,就很难知道问题是什么。我创建了一个名为rightAnswer的列表,并将0索引设置为等于1的整数。然后,我使用您的代码检查用户输入的内容。唯一的区别是我将输入转换为整数,因为rightAnswer[0]是整数。请注意,将输入转换为整数不是一个好主意,因为如果用户键入字符串,程序将崩溃。在那之后,你的程序运行良好

rightAnswer = [1]
score = 0

inputtedAnswer = int(input("Type in 1"))

if inputtedAnswer == rightAnswer[0]:
    score += 1
    print ("Score: " + score)
else:
    score = score

我认为这是您想要的,但如果不知道rightAnswer列表的内容,就很难知道它。

rightAnswer[0]是我以列表形式存储信息以获得正确答案的地方,但当我将其与字符串进行比较时,它将不会重新命名。您有错误吗?你确定正确答案和输入答案是你所期望的吗?我猜您可能需要将rightAnswer[0]强制转换为字符串(
str(rightAnswer[0])
),或者某些内容没有您认为它具有的值。请使用
print(InputedAnswer,rightAnswer[0])
检查这些值。他们平等吗?它们是同一类型的吗?它们是你期望的吗?谢谢!完全忘记了int和string。。我是python新手,谢谢你的帮助!没问题,很乐意帮忙