【问题标题】:elif statements wont print if True如果为真,elif 语句将不会打印
【发布时间】:2022-08-15 13:56:16
【问题描述】:

我正在制作一个应用程序,它会告诉你你属于哪一代,但不能让 elifs 只打印 if 语句。

Age = input(\'What year where you born? \')

if int(Age) >= 2001:
    print(\"Generation Z/Boomlets\")
elif int(Age) == range(1981, 2000):
    print(\"Generation Y/Millennium\")
elif int(Age) == range(1965, 1980):
    print(\"Generation X\")
elif int(Age) == range(1946, 1964):
    print(\"Baby Boomers\")
elif int(Age) == range(1927, 1945):
    print(\"Mature / Silents\")
elif int(Age) == range(1901, 1926):
    print(\"GI Generation\")
  • 为什么int 等于range?您需要检查 age 是否为 in 范围。

标签: python if-statement printing


【解决方案1】:

您可以在开始时将您的输入转换为int(并且不需要每次都这样做):

age = int(input('What year where you born? '))

in 替换您的== 标志。

elif age in range(1981, 2000):
    ...

【讨论】: