我对Python中的列表推导式有一定了解。但是在需要检查列表不为None的情况下,列表推导式会失败。
例如:
tags = v.tags
if tags:
for t in tags:
if t['Key'] == 'Name':
# Do something
如果tags为None,则以下列表推导会失败。如果tags为空/ [],则它可以正常工作。我想要一个可以检查None的列表推导。
[k for k,v in tags if tags]:
tags
。你可以使用空的集合([]
,()
,{}
)来实现,但不能使用None
。 - Ma0[k for k,v in (tags or [])]
的意思是从列表 tags 中获取键(key)的集合,如果 tags 为空列表,则返回一个空集合。 - Matthias