列表理解转换
List comprehensions Conversion
我最近开始学习 Python,但我在将下面的代码片段转换为列表理解时遇到困难:
list = [] #An empty List
for key,value in defaultDict.items():#iterate through the default dict
for i in defaultDict[key]:#iterate through the list in the defaultDict
if i not in list:#If the item in the list is not present in the main list
list.append(i)#append it
我能做到吗?非常感谢任何帮助。
非常简单:使用嵌套列表推导来获取所有 i
s 和一个集合来删除重复项。
list(set([item for __, value in defaultDict.items() for item in value]))
让我们分解一下:
[item for key,value in defaultDict.items() for item in value]
是 nested list comprehension.
set(...)
将删除所有重复项 - 相当于您拥有的 if i not in list: list.append(i)
逻辑
list(set(...))
将为您将集合转换回列表。
我最近开始学习 Python,但我在将下面的代码片段转换为列表理解时遇到困难:
list = [] #An empty List
for key,value in defaultDict.items():#iterate through the default dict
for i in defaultDict[key]:#iterate through the list in the defaultDict
if i not in list:#If the item in the list is not present in the main list
list.append(i)#append it
我能做到吗?非常感谢任何帮助。
非常简单:使用嵌套列表推导来获取所有 i
s 和一个集合来删除重复项。
list(set([item for __, value in defaultDict.items() for item in value]))
让我们分解一下:
[item for key,value in defaultDict.items() for item in value]
是 nested list comprehension.set(...)
将删除所有重复项 - 相当于您拥有的if i not in list: list.append(i)
逻辑list(set(...))
将为您将集合转换回列表。