Python 包含字符串的列表字典

Python 包含字符串的列表字典,python,list,dictionary,Python,List,Dictionary,我正在使用一个返回字符串列表的方法。比如: a=get_all_elements() dict = { element1, element2, element3} 我想利用“a”中的字符串并创建一个列表字典。比如: a=get_all_elements() dict = { element1, element2, element3} 这里element1也是一个字符串列表,它将由另一个返回字符串列表的方法填充。例: data = {'element1': [string1, string

我正在使用一个返回字符串列表的方法。比如:

a=get_all_elements()
dict = { element1, element2, element3}
我想利用“a”中的字符串并创建一个列表字典。比如:

a=get_all_elements()
dict = { element1, element2, element3}
这里element1也是一个字符串列表,它将由另一个返回字符串列表的方法填充。例:

data = {'element1': [string1, string2, string3], 'element2': [string1, string2, string3]...}
我如何才能做到这一点?

此代码:

a = get_all_elements()
mydict = {ai:[] for ai in a}
将创建包含空列表的词典:

{'element1':[], 'element2':[], 'element3':[]}
然后,您可以通过添加字符串来填充它:

mydict['element1'].append('stringN')
或创建列表:

mydict['element1'] = [s for s in create_strings()]
如果此函数将元素作为参数,则只需执行以下操作:

mydict = {ai:[s for s in create_strings(ai)] for ai in a}

您可以使用
defaultdict
对象,请参阅


字典是键值对类型的容器,因此
{element1,element2,element3}
不是字典。dict是python中的关键字。不要用于变量名。dict={element1,element2,element3}应该是list:[element1,element2,element3]请添加相关代码或适当的示例输入和预期输出,否则这个问题可能会因为缺少信息而关闭。@ilmiacs,它实际上不是关键字。这些都是类似于导入、如果、while等等的东西。你是正确的,但是隐藏内置是个坏主意