zoukankan      html  css  js  c++  java
  • [py]列表生成式-支持条件,多值的拼接

    列表生成式

    • 代码简洁一些
    • 支持多条件, 过滤,或拼接某些值
    • 支持返回多值
    • 是一种生成式
    # 生成一个列表
    print(list(range(1, 11)))
    
    # 生成一个列表x^2
    ## 方法1: 返回x^2的数列
    arr = []
    for i in range(1, 11):
        arr.append(i * i)
    print(arr)
    
    ## 方法2:生成式
    print([x * x for x in range(1, 11)])
    ##加条件
    print([x * x for x in range(1, 11) if x % 2 == 0])
    
    #返回2个值, 2个值之间要写+,总之不能是空格
    print([m + n for m in "ABC" for n in "xyz"])
    
    ##############################################
    
    
    # 实现ls
    import os
    print([d for d in os.listdir('.')])
    print('---------------------')
    
    ## 字典的生成式
    d = {'x': 'A', 'y': 'B'}
    for k, v in d.items():
        print(k, v)
        
    # print([k,v for k,v in d.items()])
    #返回2个值, 2个值之间要写+,总之不能是空格
    print([k + v for k, v in d.items()])
    
    ## 栗子1: 返回小写
    arr = ["Mao", "Tai"]
    print([i.lower() for i in arr])
    
    
    ## 栗子2: 返回arr中字符串的小写
    ## 方法1:
    L1 = ['Hello', 'World', 18, 'Apple', None]
    arr_tmp = []
    for i in L1:
        if isinstance(i, str):
            print(11)
            arr_tmp.append(i.lower())
    print(arr_tmp)
    
    ## 方法2: 生成式
    print([i.lower() for i in L1 if isinstance(i, str)])
    
    
  • 相关阅读:
    mysql 数据库优化
    eclipse 自动 注释
    rpc 小例子
    几种基于HTTP协议的RPC性能比较
    spring 两个 properties
    xxx.properties获取方法
    Mysql 操作
    Java对象初始化详解
    Tomcat自动启动脚本
    数学工具 在 当代 和 未来 的 进化革命 的 可能性
  • 原文地址:https://www.cnblogs.com/iiiiiher/p/8328971.html
Copyright © 2011-2022 走看看