首页 > 解决方案 > 如何将一行代码转换为 for in 循环?

问题描述

我是 python 新手,所以这可能是一个太基本的问题,但是如何将它们分别转换为嵌套的 for in 循环?-由于大括号,我被卡住了。

[{a['artist'] for a in n['tracks']} for user in users for n in user['playlists']]

{v['party'] for vp in vps for v in vp['positions']}

标签: pythonnested

解决方案


随着时间的推移,这将变得更加直观,但您只需要在这些列表中“展开”这些循环。第一个是:

artists = []
for user in users:
    for n in user["playlists"]:
        for a in n["tracks"]:
            artists.append(a["artist"])     

第二个:

parties = []
for vp in vps:
    for v in vp["positions"]:
       parties.append(v["party"])

请注意,您将存储循环的最低级别的列表,即“派对”和“艺术家”,应该在循环开始之前创建。


推荐阅读