zoukankan      html  css  js  c++  java
  • Python-12-简单推导

    列表推导:从其他列表创建列表
    >>> [x * x for x in range(10)]
    [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
    下面实现只打印能被3整除的平方值(仅当x能被3整除时,x*x才能被3整除)
    >>> [x*x for x in range(10) if x 3 == 0] %
    [0, 9, 36, 81]
    还可添加更多for:
    >>> [(x, y) for x in range(3) for y in range(3)]
    [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
    作为对比,下面两个for循环创建同样的列表
    result = []
    for x in range(3):
        for y in range(3)
            result.append((x, y))
    将首字母相同的配对:
    >>> girls = ['alice', 'bernice', 'clarice']
    >>> boys = ['chris', 'arnold', 'bob']
    >>> [b+'+'+g for b in boys for g in girls if b[0] == g[0]]
    ['chris+clarice', 'arnold+alice', 'bob+bernice']
    使用圆括号代替方括号并不能实现元组推导,而是将创建生成器,然而,可使用花括号来执行字典推导。
    >>> squares = {i:"{} squared is {}".format(i, i**2) for i in range(10)}
    >>> squares[8]
    '8 squared is 64'
    在列表推导中, for前面只有一个表达式,而在字典推导中, for前面有两个用冒号分隔的表
    达式。这两个表达式分别为键及其对应的值。
  • 相关阅读:
    Python基础-画菱形
    Python基础-List找重复数
    celery的使用
    linux上安装git以及使用
    python解压压缩包的几种方式
    os 和shutil模块的使用方法
    C++学习网站总结
    道德经
    使用BeautifulSoup爬取汽车之家新闻
    RPA项目所遇知识点
  • 原文地址:https://www.cnblogs.com/swefii/p/10850524.html
Copyright © 2011-2022 走看看