首页 > 解决方案 > 如何将变量附加到列表而不是其内容

问题描述

我希望能够在不“解包”的情况下附加一个变量。我有一个作为变量的电影主列表,每个变量都是一个具有其特征的列表。例如。Harry_Potter = ['Harry_Potter', type[1], genre[2], genre[3], genre[4], genre[5], rating[0], origin[1]]

然后我运行一个循环,例如检查 Harry_Potter 是否具有类型 [0],它确实如此。但是当我想将变量附加到新列表而不是分配给它时。

Master_List = [Harry_Potter, Black_Mirror, Avenger, Cinderella,
               Snow_White, Rapunzel, Anne_with_an_E, Invented, Invented2]

New_List = []

for media in Master_List:
    if type[1] in media:
        print(type[1], 'is in', media[0])
        New_List.append(media)

print(New_List)

New_List 不包含变量名称,而是包含['Harry_Potter', type[1], genre[2], genre[3], genre[4], genre[5], rating[0], origin[1]]例如条目。

编辑:这是特征列表:

type = ['TV', 'MOVIE']
genre = ['ACTION', 'COMEDY', 'DRAMA', 'FANTASY',
         'FICTION', 'MYSTERY', 'ROMANCE', 'DOCUMENTARIES']
rating = ['G', 'PG', 'PG13', 'NC17', 'R']
origin = ['CANADIAN', 'FOREIGN']

标签: pythonlistappend

解决方案


变量本身并不存在,它们只是对对象的引用。您不能将变量添加到列表中,但可以添加变量引用的对象。

如果您希望名称重要,您应该使用字典,并将键附加到列表中。


推荐阅读