zoukankan      html  css  js  c++  java
  • python-推导式

    一。命名元组
    from collections import namedtuple
    Student = namedtuple("student", ['name', 'age', 'gender'])
    tu2 = Student('小明', '17', '男')
    tu1 = Student('11', '22', '33')
    print(tu2.age)
    print(tu1.name)
    运行结果:


    二。推导式
      --列表推导式:
      --字典推导式:
      --生成器推导式:
    1)列表推导式
      """"完成100以内的列表存储,类似与这样的[python1,python2,...python99]"""
    一般实现方法:
    li=[]
    for i in range(100):
    value="python{}".format(i)
    li.append(value)
    print(li)
    运行结果:

     推导式实现方法:

    li2= ["python{}".format(i) for i in range(100)]
    print(li2)

    运行结果:

    比较:

      1.代码更精简了

      2.推倒式,把后面符合条件的结果放置到前方

      例如:我想计算出100以内所有偶数,并以[python0,python2...]展示出来

      li3= ["python{}".format(i) for i in range(100) if i % 2 == 0]
      print(li3)

      运行结果:

      

      解析:for i inrange(100) 遍历出1-99的数字并返回i给后方 判断条件运行,运行后满足 返回 i,不满足不返回。

    2)字典推导式

      """

      把dic变为字典,例如dic={"JSESSIONID":"9C18421BAC772E2EC9AE9152575CC435",...}

    dic="JSESSIONID=9C18421BAC772E2EC9AE9152575CC435;Hm_lvt_766ee6e6a00b564a250208265ca36e29=1614593292;sid=03a10642-f8d9-4ef0-8d86-5f894d5f7fda"

    """

    传统方法:与列表类似这里不做演示


    推导式做法:
    dic_1={i.split("=")[0]:i.split("=")[1] for i in dic.split(";")}
    print(dic_1)

    运行结果:


    3)生成器推导式:







    爱折腾的小测试
  • 相关阅读:
    js去java的变量
    android:layout_alignLeft=""和android:layout_toLeftOf=""
    c:foreach遍历list
    fragment的getActivity和activity的getapplication实现共享方法和变量
    java.lang.IllegalStateException: commit already called
    选择图片时调用手机拍摄和相册图片
    android:duplicateParentState属性
    java日期事件处理
    汉字字符串编码转换
    JAVA入门到精通-第5讲-类和对象
  • 原文地址:https://www.cnblogs.com/newsss/p/14467710.html
Copyright © 2011-2022 走看看