打破列表中的用户输入

时间:2015-11-04 05:26:40

标签: python python-3.x

我在使用用户输入突破扩展列表时遇到问题。我想我错过了如何使用if语句查询特定项目的列表。当用户输入-999时,我需要列表要求输入。我还需要从列表中排除-999。你能救我吗?

print(scoreLst)就是这样,可以在我使用它时测试它是如何工作的。

scoreLst =[]
score = ()
lst1 = True

print("The list ends when user inputs -999")
scoreLst.append(input("Enter the test score: "))
while lst1 == True:
    score1 = scoreLst.append(input("Enter another test score: "))
    print(scoreLst)     
    if score1 != -999:
        lst1 ==  True
    else:
        scoreLst.remove(-999)
        lst1 == False

1 个答案:

答案 0 :(得分:2)

一些注意事项:

  • 将测试分数转换为int

  • list.append返回None,不要将其分配给任何内容;使用scoreLst[-1]代替score1

  • 请勿使用list.remove删除列表的最后一个元素,list.pop()可以正常使用

  • lst1 == False是比较,lst1 = False是作业

  • 一旦用户输入-999,您就会创建一个无限循环和break,我认为不需要lst1

最终结果:

scoreLst = []

print("The list ends when user inputs -999")
scoreLst.append(int(input("Enter the test score: ")))

while True:
    scoreLst.append(int(input("Enter another test score: ")))
    if scoreLst[-1] == -999:
        scoreLst.pop()
        break