我有字典为dict [keyA] [key1]的形式,其中“ key1”是列表的字典。即keyA是列表字典的字典。以下是如何创建字典的示例。
dict = { 'keyA': { 'keyA1': ['L1','L2',...], 'keyA2': ['L','L',...], ... },
'keyB': { 'keyB1': ['L1','L2',...], 'key...': ['L','L',..], ...}
}
我需要将列表的值连接在一起,并希望使用类似的构造:
newStr = ' A B C '.join(val for val in (dict[keyA][k] for k in dict[keyA]))
此操作失败,并显示val是'list'而不是字符串的错误。
当我通过2 for循环解析val时,我得到了我期望上面提供的字符串列表。
简单示例,适用于外部词典中的一个条目并显示字符串列表
for k in dict[keyA]:
for val in dict[keyA][k]:
print(val)
不起作用并显示'列表'的示例:
for val in (dict[keyA][k] for k in dict[keyA]): print(val)
上面测试失败的输出(请注意输出中的括号)。如果我“键入”此值,则表明该值确实是一个列表:[“一些文字”,“一些其他文字”,....]
上面工作的嵌套“ for”循环在没有括号的情况下在单独的行上产生了上面的文本,其输出应该在联接中起作用以给出期望的结果。...
任何人都可以在这里解释我所缺少的吗?