我开始制作一个项目,展示我喜欢的乐队,然后询问他们希望看到哪些艺术家/乐队的专辑。我已经得到它来展示我喜欢的专辑但是每当我试图让Python显示我如何评价乐队/艺术家的特定专辑中的每首歌曲时,它都没有做任何事情。它结束了。
发生了什么以及如何解决?
另外,如何将album = input("\nWhich album would you like to see the songs rated?")
转换为小写,以便更容易?就像它问你希望哪首专辑看到评分的歌曲?而我放Vessel
时,Python不会解释列表名称而不会粘贴列表吗?
import time
top_albums = ["1.) Vessel", "2.) Regional at Best", "3.) Twenty One
Pilots", "4.) Blurryface"]
twenty_one_pilots = ["Example 1"]
regional_at_best = ["Example 2"]
vessel = ["Example 3"]
blurryface = ["Example 4"]
for top_album in top_albums:
print(top_album)
time.sleep(2)
album = input("\nWhich album would you like to see the songs rated?")
if album == twenty_one_pilots:
print(twenty_one_pilots)
elif album == regional_at_best:
print(regional_at_best)
elif album == vessel:
print(vessel)
elif album == blurryface:
print(blurryface)
答案 0 :(得分:0)
如果您想根据列表名称获取列表的内容,可能更适合使用dictionary。最小的例子:
my_bands = { "vessel" : ["album 1", "album 2"], "21 pilots" : ["album 1", "album 2"] }
band = input("\nEnter a band name to see their albums: ")
print(my_bands[band])
要包含评分,您的列表可以是具有相册名称和评级的元组列表。但希望这可以让你开始朝着正确的方向前进。
正如其他地方所说,您可以在字符串上使用.lower()
转换为小写。所以上面的最后一行是print(my_bands[band.lower()])
。
答案 1 :(得分:0)
python
不会将字符串解释为代码,这意味着您的代码将无法按预期运行。要执行您想要的操作,请在eval()
上执行album
。
关于第二个问题,请使用.lower()
将字符串转换为小写,如下所示:
album = input("…").lower()