从列表内的列表中打印某个值

时间:2018-10-12 15:41:53

标签: python arrays python-3.x list

我有一个列表,其中包含一首歌曲及其信息的列表。

table=[['lazy song','Bruno Mars','Pop','9']['Song name','Bandname','type','likes'].....]

我如何创建一个用户输入,以打印提及用户输入的单词的列表。

What you want it to be?= lazy
lazy song Bruno Mars Pop 9

3 个答案:

答案 0 :(得分:0)

for song in table:
    if user_input in song[0]:
        print (song[0], song[1], song[2], song[3])

答案 1 :(得分:0)

如果您希望不仅可以搜索歌曲名称,还可以在所有字段中进行搜索,那么应该可以执行以下操作:

table=[['lazy song','Bruno Mars','Pop','9'],['Song name','Bandname','type','likes']]

user_input = input("What you want it to be? ")

for song in table:
    for item in song:
        if user_input in item:
            print(song)

将打印所有在任何字段中都匹配的歌曲。

答案 2 :(得分:0)

您可以使用any检查您的子列表

列表理解:

key = input()
lst = [i for i in table if any(j for j in i if key in j)]

扩大印刷范围:

for i in table:
    if any(j for j in i if key in j):
        print(i)