【发布时间】:2015-02-26 19:40:59
【问题描述】:
我正在阅读一个 iTunes 库文件。我抓取了艺术家姓名和歌曲并将它们放在平行列表中,一个包含艺术家姓名,另一个包含艺术家歌曲。我想只使用列表来做到这一点
artist_choice = input("Enter artist name: ")
artist_names = [Logic, Kanye West, Lowkey, Logic, Logic]
artist_songs = [Underpressure, Stronger, Soundtrack to the struggle, Ballin, Im the man]
假设用户输入艺术家姓名 Logic,我将如何遍历并行列表并打印出与艺术家 Logic 关联的每首歌曲?如果用户输入逻辑输出应该是:
Underpressure
Ballin
Im the man
【问题讨论】:
-
我会搜索所有的逻辑索引,然后使用这些索引值来找到你的结果,只需要搜索一个数组,而不是同时搜索。
-
如果将列表压缩在一起,您可以同时迭代它们。然后你可以使用谓词来设置打印的内容。不过,我会重新组织您存储东西的方式。将信息存储在像
(artist_name, [artist's_songs])这样的元组中怎么样?然后你可以只存储这些元组的列表,然后进入艺术家的元组以获取他们的歌曲。如果您要添加比歌曲更多的字段,我会创建一个类来存储数据。 -
@richgreen 我如何找到每次出现逻辑的索引位置?我想出了如何只做第一次出现的索引
-
Eww。你是*。我讨厌那个错字-_-
标签: list for-loop python-3.2