好的 如果输入是“ch1”并且您希望输出是“Ch1 - Fox News”,那么您的 if 语句不正确。
因为您将 "Ch1" 与 ['Ch1 - Fox News', 'Ch2 - PBS'] 进行比较:
>>> channels = [Ch1, Ch2]
>>> channels
['Ch1 - Fox News', 'Ch2 - PBS']
因此,要纠正这个问题,您需要使用字典,方法如下:
Ch1 = "Ch1 - Fox News"
Ch2 = "Ch2 - PBS"
channels = {"CH1":Ch1,"CH2": Ch2}
new_ch = input("What channel would you like to switch to?")
What channel would you like to switch to?"ch1"
if new_ch.upper() in channels:
print("You're now on channel,", channels[new_ch.upper()],".")
else:
print("That's not a valid channel.")
("You're now on channel,", 'Ch1 - Fox News', '.')
上层函数是大小写无关的。
更新
随机化:
elif choice == "2":
ch = random.choice(channels.keys())
print("You're now on channel", channels[ch],".")
要打印频道列表:
elif choice == "1":
print("\n")
for item in channels:
print(channels[item])