猿问

使用非关键字在Python中的For循环出现问题

我对此进行了大量研究,但无法弄清楚自己在做什么错。请帮忙!!!


程序的目标: 一直问用户选择一个选项的问题,直到用户在提供的列表中选择一个为止。 问题:我只是无法使not关键字正常工作。


代码语法:


items = {'1': '2', '3': '4', '5': '6'}

choice = input("Select your item: ")

print(choice)

for choice not in items:

    if choice in items:

        the_choice = items[choice]

        print("You chose",the_choice)

        break

    else:

        print("Uh oh, I don't know about that item")

日食错误:


for not choice in items:

          ^

SyntaxError: invalid syntax


慕斯709654
浏览 155回答 3
3回答

慕工程0101907

试试这个:items = {'1': '2', '3': '4', '5': '6'}while True:    choice = input("Select your item: ")    print(choice)    if choice in items:        the_choice = items[choice]        print("You chose",the_choice)        break    print("Uh oh, I don't know about that item")

心有法竹

只是从您的代码中忽略不是关键字items = {'1': '2', '3': '4', '5': '6'}    choice = input("Select your item: ")    print(choice)    for choice  in items:       if choice in items:        the_choice = items[choice]        print("You chose",the_choice)        break    else:        print("Uh oh, I don't know about that item")

拉风的咖菲猫

让我们来看看为什么当它不应该工作完全忽视了语法部分:items由组成{'1': '2', '3': '4', '5': '6'}。itemssay的补码citems应包含所有字符串,但不包括items。for not choice in items就像在说for choice in citems。对于解释器来说这没有意义,因为在这里定义这么大的集合确实是一个问题。但是,您的问题可以通过以下方法解决:items = {'1': '2', '3': '4', '5': '6'}choice = input("Select your item: ")while choice not in items:    print("Uh oh, I don't know about that item")    choice = input("Select your item: ")the_choice = choice #assuming you want to place the value of `choice` in `the_choice` for some reasonprint("You chose",the_choice)
随时随地看视频慕课网APP

相关分类

Python
我要回答