出于某种原因,考虑到我在 Python 中不断找到的所有语法糖,以下代码对我来说有点麻烦,所以我想问问是否有更好的方法:
pictures = list_of_random_pictures()
invalid_pictures = {}
for picture in pictures:
if picture_invalid(picture):
if not invalid_pictures.get(picture.album.id):
invalid_pictures[picture.album.id] = []
invalid_pictures[picture.album.id].append(picture)
所以只是为了澄清,我想知道是否有一种更易读的方式来处理上面的最后 3 行。当我重复invalid_pictures[picture.album.id]
3 次时,如果它完全可以避免的话,它似乎是不必要的。
编辑:刚刚意识到我上面的代码会发生 KeyError,所以我已经对其进行了更改以处理它。