Python列表推导式

列表推导式的特点:

  • 1.语言简洁   
  • 2.查找速度快 

例子1:列表解析式-取出名字长度大于3的人员

>>> Names=['bob','tom','alice','jerry','rose','jack']
>>> for name in Names:
...     if len(name)>3:
...             print (name)
...
alice
jerry
rose
jack

换成列表解析式的方式是:

>>> [name for name in Names if len(name)>3]
['alice', 'jerry', 'rose', 'jack']

将字符转换成大写:

>>> [name.upper() for name in Names if len(name)>3]
['ALICE', 'JERRY', 'ROSE', 'JACK']

例子2:列表解析式-求(x,y)其中x是0-5直接的偶数,y是0-5之间的奇数的元祖列表

#求(x,y)其中x是0-5直接的偶数,y是0-5之间的奇数的元祖列表
a1 = [(x,y) for x in range(0,6) if x %2 ==0 for y in range(0,6) if y % 2!=0]
print(a1)

例子3:列表解析式-求3,6,9组成的列表 

#求M中3.6.9组成的列表
M = [[1,2,3],[4,5,6],[7,8,9]]
result = [x[2] for x in M]
print(result)

输出结果:

C:\Python34\python3.exe E:/Project_case/demo.py
[3, 6, 9]

例子4:列表解析式-求1,5,9组成的列表

#求1,5,9组成的列表

M = [[1,2,3],[4,5,6],[7,8,9]]
a2 = [M[i][i] for i in range(len(M))]
print(a2)

输出结果:

C:\Python34\python3.exe E:/Project_case/demo.py
[1, 5, 9]

进程已结束,退出代码0
posted @ 2018-02-17 21:49  IT测试老兵  阅读(466)  评论(0)    收藏  举报
作者:测试老兵
出处:https://www.cnblogs.com/fighter007/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。