更多课程 选择中心

Python培训
美国上市教育机构

400-111-8989

Python培训

自学Python教程【第六十四节】列表综合

  • 发布:Python培训
  • 来源:Python
  • 时间:2019-03-15 16:51

欢迎大家来到自学Python教程教室,上一讲我们分享了pickle的相关内容,今天来讲讲 Python 里一个我非常喜欢的特性--列表综合(List Comprehension)。所谓列表综合,就是通过一个已有的列表生成一个新的列表。

自学Python教程,列表综合

直接看例子:

假设有一个由数字组成的 list,现在需要把其中的偶数项取出来,组成一个新的 list。一种比较“正常”的方法是:

list_1 = [1, 2, 3, 5, 8, 13, 22]

list_2 = []

for i in list_1:

if i % 2 == 0:

list_2.append(i)

print list_2

输出

[2, 8, 22]

此方法通过循环来遍历列表,对其中的每一个元素进行判断,若模取2的结果为0则添加至新列表中。

使用列表综合实现同样的效果:

list_1 = [1, 2, 3, 5, 8, 13, 22]

list_2 = [i for i in list_1 if i % 2 == 0]

print list_2

输出

[2, 8, 22]

[i for i in list_1] 会把 list_1 中的每一个元素都取出来,构成一个新的列表。

如果需要对其中的元素进行筛选,就在后面加上判断条件 if。所以 [i for i in list_1 if i % 2 == 0] 就是把 list_1 中满足 i % 2 == 0 的元素取出来组成新列表。

进一步的,在构建新列表时,还可以对于取出的元素做操作。比如,对于原列表中的偶数项,取出后要除以2,则可以通过 [i / 2 for i in list_1 if i % 2 == 0] 来实现。输出为 [1, 4, 11]。

在实际开发中,适当地使用列表综合可以让代码更加简洁、易读,降低出错的可能。

留一道作业:

用一行 Python 代码实现:把1到100的整数里,能被2、3、5整除的数取出,以分号(;)分隔的形式输出。

恭喜您在Python自学的道路上又坚持了一天,这下你对Python中的列表综合(List Comprehension)有没有更近一步的了解了呢?好好做练习哦!更多Python相关的内容尽在达内Python培训机构官网,敬请关注 !

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:自学Python教程【第六十三节】pickle
下一篇:自学Python教程【第六十五节】函数的参数传递(1)
选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省