python_函数进阶3

Posted echo-up

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python_函数进阶3相关的知识,希望对你有一定的参考价值。

一、生成器

1、自己用python代码写的迭代器,生成器的本质就是迭代器

2、def fun():

    print(111)
    yield ‘aa‘

    print(222)

y = fun()  #生成器函数的对象

print(y.__next__)   #111,aa  __next__取值

3、yield不会结束函数,一个next对应一个yield,yield将值返回给对象

4、生成器直接创建,不需要转化,从本质就节省内存

5、send  yield

  send与next一样,也是对生成器取值(执行一个yield方法)

  send可以给上一个yield传值

  第一次取值永远是next

  最后一个yield永远也得不到send传的值

 

二、列表推导式

1、循环模式

  l = [i for i in range(100)]

2、筛选模式

  l2 = [i for i in range(100) if i %2==0]

3、优点:一行解决,方便

   缺点:不易排错,不能超过三次循环

4、生成器表达式

  将列表推导式[]换成()即可

5、字典推导式

  dic = [‘a‘:10,‘b‘:20]

  ite = (dic[k]:k for k in dic)


以上是关于python_函数进阶3的主要内容,如果未能解决你的问题,请参考以下文章

虫师Selenium2+Python_3Python基础

3Python文件操作工具 xlsxwriter 工具

python_函数进阶

Python(56)_函数进阶

python进阶之内置函数和语法糖触发魔法方法

kafka-3python生产者和消费者实用demo