列表推导式可以帮助我们筒化传统的循环代码,看下面的例子:
time_zones=[rec['tz'] for rec in records]
这里,records是一组记录;其中的每一条记录都有tz字段,我们需要遍历每条记录提取其中的tz字段的值,将它们存在一个新的列表time_zones中;在不使用列表推导式的情况下,我们不得不使用循环
for rec in records{
time_zones.append(rec['tz'])
}
现在有了列表推导式,就可以直接用一条语句解决问题;更重要的是,如果不是每条记录都包含tz字段,我们还可以在列表推导式中直接使用条件进行判断,如下所示:
time_zones=[rec['tz'] for rec in records if 'tz' in rec]
由此可见,列表推导式使得代码非常简洁;
网友评论