如何在列表中使用范围变量而不引发语法错误?

2024-03-29 04:45:31 发布

您现在位置:Python中文网/ 问答频道 /正文

a = range(20,30)
b = range(1000,5000)
list1 = [["range a",a],["range b",b]]
x = int(input())
for i in list1:
    if x in i:
        print("congratulations! input is in range"+i[0])
y = input()

程序立即关闭而不显示错误消息


Tags: in程序消息forinputifis错误
2条回答

下面的代码行起作用。你知道吗

     a = range(20,30)
     b = range(1000,5000)
     list1 = [a,b]
     x = int(input())
     for i in list1:
    if x in i:
         print("congratulasions! input is in range of ",i)
    y = input()

看起来您的if语句正在检查包含列表的列表。把它改成if x in i[1]:就可以了。这是我的代码。你知道吗

a = range(20,30)
b = range(1000,5000)
list1 = [["range a", a],["range b", b]]
x = int(input())
for i in list1:
    if x in i[1]:
        print (i[0])

用python3.7.0在IDLE中测试了它,下面是我的直接输出。你知道吗

>>> a = range(20,30)
>>> b = range(1000,5000)
>>> list1 = [["range a", a],["range b", b]]
>>> x = int(input())
25
>>> for i in list1:
    if x in i[1]:
        print(i[0])

range a

如果它仍然不适合你,也许你的IDE有问题。你知道吗

相关问题 更多 >