Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 根据列表中的名称创建列表_Python - Fatal编程技术网

Python 根据列表中的名称创建列表

Python 根据列表中的名称创建列表,python,Python,我有一个类似下面的列表 list1 = ['mike', 'sam', 'paul', 'pam', 'lion'] 我可以一个接一个地指定一个列表名,如下所示 for item in list1: for item in line: mikelist = [] mikelist.append() for item in list1: for item in line: samlist = []

我有一个类似下面的列表

list1 = ['mike', 'sam', 'paul', 'pam', 'lion']
我可以一个接一个地指定一个列表名,如下所示

for item in list1:
     for item in line:
          mikelist = []
          mikelist.append()

for item in list1:
     for item in line:
          samlist = []
          samlist.append()

for item in list1:
     for item in line:
          paullist = []
          paullist.append()
等等。与其在列表中指定名称来创建新列表和追加,我如何从列表1中获取该项并在该for循环行中为列表1中的所有项自动创建列表

 for item in line:
      namefromthelist = []
      namefromthelist.append()

创建名称为键、列表为值的词典:

dict = {}
list1 = ['mike', 'sam', 'paul', 'pam', 'lion']

for i in list1:
    dict[i] = []
print(dict)
输出:

{'mike': [], 'lion': [], 'paul': [], 'sam': [], 'pam': []}
然后您可以这样使用它:

dict['mike'].append('blah')
print(dict['mike'])
fruits = ['banana', 'orange', 'apple']
for person in persons:
    persons[person].append(fruits)

这看起来更像是一份字典的工作。类似这样的方法会奏效:

names = ['mike', 'sam', 'paul', 'pam', 'lion']
persons = dict(zip(names, [[]] * len(names)))
这就产生了:

>>> persons
{'mike': [], 'sam': [], 'paul': [], 'pam': [], 'lion': []}
>>>
现在,您可以使用以下内容填充每个列表:

dict['mike'].append('blah')
print(dict['mike'])
fruits = ['banana', 'orange', 'apple']
for person in persons:
    persons[person].append(fruits)
我不推荐这种方法,你应该使用字典。然而,如果你坚持沿着这条路走下去,这就是你将如何达到你想要的结果

for name in list1:
    globals()['{}list'.format(name)] = [name]

print(mikelist)
# ['mike']

print(pam)
# ['pamlist']

你为什么不改用字典呢?