从CSV文件创建列表



我有一个字符串列表。现在我想为原始列表中的每个字符串创建一个列表。我不想在新列表中硬编码。

例如,如果我的列表是my_list = ['Paul', 'Ringo', 'John', 'George'],我想创建4个新列表,每个字符串一个(Paul = [] Ringo =[]等)。什么好主意吗?谢谢!

Python不能在运行时动态命名变量。但是,您可以填充一个字典,其中键是列表中的项,值是空列表。这样的:

my_list = ['Paul', 'Ringo', 'John', 'George']
my_dict = {}
for name in my_list:
my_dict[name] = []
print(my_dict)
# {'Paul': [], 'Ringo': [], 'John': [], 'George': []}

额外的好处是,你可以使用更短的字典理解。这样的:

my_list = ['Paul', 'Ringo', 'John', 'George']
my_dict = {item:[] for item in my_list}
print(my_dict)
# {'Paul': [], 'Ringo': [], 'John': [], 'George': []}

这是一个使用字典的例子:

my_list = ['Paul', 'Ringo', 'John', 'George']
dict = {}
for beatles in my_list:
dict[beatles] = []
print(dict)
dict['Paul'].append('Yellow Submarine')
print(dict['Paul'])
my_list = ['Paul', 'Ringo', 'John', 'George']
b=[ (i+'=[]') for i in my_list]
for i in b:
exec(i)
print(Paul)

使用execute函数将字符串语句作为python语句执行

上面几行创建了四个列表变量

最新更新