python列表推导式示例

python列表推导式示例,第1张

推导式特点:
    语言检测,速度快

例1:取出名字长度大于三的人员
    for循环:
        >>> for name in names:
        ...     if len(name)>3:
        ...             print(name)
        ... 
        dddd
        eeee
        jjjj

    推导式:
        >>> [name.upper() for name in names if len(name)>3]  #取出的值还可以之间引用方法
        ['DDDD', 'EEEE', 'JJJJ']
        >>> [name for name in names if len(name)>3]         
        ['dddd', 'eeee', 'jjjj']

例2:求x、y,其中x是0-5之间的偶数,而y是0-5之间的奇数,共同组成一个元组列表
    >>> [(x,y) for x in list(range(6)) if x%2==0 for y in list(range(6)) if y%2==1] 
    [(0, 1), (0, 3), (0, 5), (2, 1), (2, 3), (2, 5), (4, 1), (4, 3), (4, 5)]

例3:求M中3、6、9组成的列表
    >>> M = [[1,2,3],[4,5,6],[7,8,9]] 
    >>> M
    [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
    >>> [row[2] for row in M ] 
    [3, 6, 9]

例4:求M中1、5、9组成的列表
    >>> M
    [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
    >>> [M[i][i] for i in range(len(M))]        
    [1, 5, 9]
    解析:
        i = 0,M[0][0] = [1,2,3][0] = 1
        i = 1,M[1][1] = [4,5,6][1] = 5
        i = 2,M[2][2] = [7,8,9][2] = 9

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/570873.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存