迭代器 生成器 装饰器 匿名函数
#可迭代对象:列表、字典、集合、字符串;能够被for 循环遍历的对象# 数字类型不可迭代;# name="wangyifei"# for i in name:#     print(i,end=" ")# print()## list=[11,22,33,44]# for i in list:#     print(i,end=" ")# print()## tuple=(1,2,3,4,5,6)# for i in tuple:#     print(i,end=" ")# print()## a=set("python")# for i in a:#     print(i,end=" ")# print()## info={"name":"laowang","age":30,"gnder":"保密"}# for i,j in info.items():#     print(i,j)# print()## for i in range(5):#     print(i)

#判断可迭代对象-Iterable;# from collections import Iterable# print(isinstance([11,22], Iterable))# print(isinstance((11,22),Iterable))# print(isinstance({11,22},Iterable))# print(isinstance("qwsdvdvg",Iterable))# print(isinstance(1234,Iterable))# print(isinstance(range(10),Iterable))

# class MyList(object):#     def __init__(self):#         self.list=[]#     def add(self,item):#         self.list.append(item)# mylist=MyList()# mylist.add(1)# mylist.add(2)# mylist.add(3)# mylist.add(4)# print(mylist.list)# from collections import Iterable# print(isinstance(mylist,Iterable))

# class MyList(object):#     def __init__(self):#         self.list=[]#     def add(self,item):#         self.list.append(item)#     def __iter__(self):#         pass# mylist=MyList()# mylist.add(1)# mylist.add(2)# mylist.add(3)# mylist.add(4)# print(mylist.list)# from collections import Iterable# print(isinstance(mylist,Iterable))

#01;# alist=[66,88,99,123,1,6,789]# a_iter=iter(alist)# while True:#     try:#         print(next(a_iter))#     except StopIteration:    #StopIteration停止迭代的异常;#         break

#02# from collections import Iterator# print(isinstance([],Iterator))# print(isinstance(iter([]),Iterator))# print(isinstance(iter("wefrt"),Iterator))

#03迭代器;# class DDQ(object):#     def __init__(self,my_list):#         self.my_list=my_list#         self.current=0#     def __iter__(self):#         return self#     def __next__(self):#         if self.current < len(self.my_list):#             item=self.my_list[self.current]#             self.current+=1#             return item#         else:#             raise StopIteration# if __name__ == '__main__':#     my_list=[1,2,3,4,5,6,7,8]#     from collections import Iterable#     print(isinstance(my_list,Iterable))#     ddq=DDQ(my_list)#     for i in ddq:#         print(i)

#for循环的本质;# for 变量 in 可迭代对象# alist=[1,2,35,6,77,9]# a_iter=iter(alist)# while True:#     try:#         print(next(a_iter))#     except StopIteration:#         break

#迭代器;斐波那契数列;# class Fei(object):#     def __init__(self,n):#         self.n=n    #数列长度;#         self.num1=0#         self.num2=1#         self.current=0    #记录索引位置#     def __iter__(self):#         return self#     def __next__(self):#         if self.current < self.n:   #判断条件,如果索引位置小于数列长度做的事;#             num=self.num1#             self.num1,self.num2=self.num2,self.num1+self.num2#             self.current+=1#             return num#         else:#             raise StopIteration## if __name__ == '__main__':#     fei=Fei(10)#     # for i in fei:#     #     print(i,end=" ")##     # ret=list(fei)#     # print(ret)##     # ret=tuple(fei)#     # print(ret)##     while True:#         try:#             print(next(fei))#         except StopIteration:#             break

#可迭代对象构造;# class MyList(object):#     def __init__(self):#         self.list=[]#     def add(self,item):#         self.list.append(item)#     def __iter__(self):#         pass# mylist=MyList()# mylist.add(1)# mylist.add(2)# mylist.add(3)# mylist.add(4)# print(mylist.list)# from collections import Iterable# print(isinstance(mylist,Iterable))

#迭代器列表,斐波那契数列;# class DDQ(object):#     def __init__(self,mylist):#         self.mylist=mylist#         self.current=0#     def __iter__(self):#         return self#     def __next__(self):#         if self.current<len(self.mylist):#             item=self.mylist[self.current]#             self.current+=1#             return item#         else:#             raise StopIteration# if __name__ == '__main__':#     mylist=[66,88,99,123,456,789]#     from collections import Iterable#     print(isinstance(mylist,Iterable))#     ddq=DDQ(mylist)#     for i in mylist:#         print(i,end=" ")

## class Fei(object):#     def __init__(self,n):#         self.n=n#         self.num1=0#         self.num2=1#         self.current=0#     def __iter__(self):#         return self#     def __next__(self):#         if self.current<self.n:#             num=self.num1#             self.num1,self.num2=self.num2,self.num1+self.num2#             self.current+=1#             return num#         else:#             raise StopIteration# if __name__ == '__main__':#     fei=Fei(10)#     # for i in fei:#     #     print(i,end=" ")##     # while True:#     #     try:#     #         print(next(fei))#     #     except StopIteration:#     #         break##     # ret=list(fei)#     # print(ret)##     # ret=tuple(fei)#     # print(ret)

#生成器;# a=[i for i in range(10)]# print(a)# #生成器是一类特殊的迭代器;# b=(i for i in range(10))       #生成器;# print(b)# # for i in b:# #     print(i)# # print(list(b))  #元祖强转列表;# print(tuple(b))

#斐波那契数列;# def fei(n):#     num1,num2=0,1#     current=0#     while current<n:#         num=num1#         num1,num2=num2,num1+num2#         current+=1#         yield num#     return# if __name__ == '__main__':#     f=fei(10)#     print(f)#     # for i in f:#     #     print(i,end=" ")##     # print(list(f))##     while True:#         try:#             print(next(f),end=" ")#         except StopIteration:#             break

#装饰器 无参# def outer(func):#     def inner():#         print("验证业务逻辑的完善")#         func()#     return inner# @outer# def f1():#     print("hello worle")# f1()

#有参数;# def outer(func):#     def inner(a,b):#         print("验证业务逻辑的完善")#         func(a,b)#     return inner# @outer# def f1(a,b):#     print("hello world",a+b)# f1(1,2)

#不定长参数;# def outer(func):#     def inner(*args,**kwargs):#         print("验证业务逻辑的完善")#         func(*args,**kwargs)#     return inner# @outer# def f1(a,b,c,d):#     print("hello",a+b+c+d)# f1(1,2,3,4)

## def outer1(func):#     def inner(*args,**kwargs):#         print("111")#         func(*args,**kwargs)#     return inner# def outer2(func):#     def inner(*args,**kwargs):#         print("day2")#         func(*args,**kwargs)#     return inner# @outer1# @outer2# def f1(a,b,c,d):#     print(a+b+c+d)# f1(1,2,3,4)

#匿名函数

# def add2num(a,b):#     print(a+b)# add2num(10,20)

#格式:lambda 形参:表达式(返回值和输出语句)# f=lambda x,y:print(x+y)# f(10,20)

# def add2num(a,b):#     return a+b# f=lambda a,b:a+b# print(f(10,20))

posted on 2019-05-30 20:44 女己。 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/wyf2019/p/10951944.html

迭代器 生成器 装饰器 匿名函数相关推荐

  1. 迭代器/生成器/装饰器 /Json pickle 数据序列化

    本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 孩子,我现在有个需 ...

  2. Python基础 day4 迭代器生成器 装饰器 Json pickle 数据序列化 软件目录结构规范 作业:ATM项目开发...

    本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 列表生成器 1.列表生成式,迭代器&生成器 列表生成式 孩子, ...

  3. Python 3 学习——函数扩展and迭代器生成器装饰器

    Python 学习的第九小节 写此博客 是为了激励自己,并且将自己的心得以及遇到的问题与人分享 一.学习笔记 1. 高阶函数 函数名可以作为函数参数输入 .可以进行赋值.还可以作为返回值. 2.作用域 ...

  4. day04 迭代器生成器装饰器

    目录   1.迭代器 2.生成器 3.推导式 4.匿名函数 5.内置函数 6.递归 7.闭包 8.装饰器 一.迭代器 特点: 1. 省内存 2. 只能向前. 不能反复 3. 惰性机制 让不同的数据类型 ...

  5. python学习day-8 迭代器 生成器 装饰器

    http://www.cnblogs.com/linhaifeng/articles/7580428.html 迭代器#迭代器即迭代的工具,那什么是迭代呢?#迭代是一个重复的过程,每次重复即一次迭代, ...

  6. python迭代器生成器装饰器

    基本概念 学习python中有什么不懂的地方,小编这里推荐加小编的python学习群:895 817 687有任何不懂的都可以在里面交流,还有很好的视频教程pdf学习资料,大家一起学习交流! 1.容器 ...

  7. python 生成器装饰器_4.python迭代器生成器装饰器

    基本概念 1.容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中.通常这类数据结构把所有的元 ...

  8. python 生成器装饰器_七.python迭代器生成器装饰器

    1.迭代器 1.1 什么是可迭代对象(Iterable)? 定义:可以直接作用于for循环的对象统称为可迭代对象,即Iterable. 可迭代对象包括: 1.集合数据类型:如list.tuple.di ...

  9. python基础(迭代器,生成器,装饰器)

    python: 生成器: 因为当列表元素达到一定上限,列表会占很大内存空间来存储,所以列表是受到内存限制的来适当使用. 生成器可以按照一个算法,循环推导出元素,就不用一次生成整个列表,而通过生成器(g ...

最新文章

  1. Spring Batch事务处理
  2. Android SDK与API版本的对应关系
  3. linux文件属性和类型
  4. python pip 升级
  5. viper4android 魅族6,手机资讯导报:魅族自曝新旗舰PRO6摄像头不凸起
  6. 5岁儿童自学python编程-多大的孩子学python编程比较好
  7. JSon数据操作示列
  8. union all关联两个不相关的表,按时间排序
  9. 编译OpenJDK12:freetypeScaler.obj error LINK2019 无法解析的外部符号
  10. php mysql网页象棋源码_Android项目源码安卓联网中国象棋源码
  11. 其它——Siege压力测试工具使用
  12. 一文极速读懂 KEGG 数据库
  13. 自然语言处理——字符串基础操作及应用
  14. java扫码枪键盘_浅谈在react中如何实现扫码枪输入
  15. DFRobot行业AI开发者大赛--LattePandaDelta
  16. 视觉单目标跟踪任务概述
  17. 什么是Ordinal Classification?
  18. 时序优化方法和引起时序违例的若干问题
  19. 一个架构师的价值在于,他不仅能看到系统的美,而且能够在建造系统的时候能够把这些美创造出来...
  20. Python的五大奇淫技巧,带你掌握高效编程技巧的充实感

热门文章

  1. Web文件上传方法总结大全
  2. linux应用程序接收文件,Linux应用程序学习之文件编程
  3. java装饰模式模拟流_Java 装饰模式 io流
  4. c++ list box 字体设置_上海印刷字体展示馆 迎来第一批团队参观
  5. java id pid_根据id,pid生成树结构,再生成id,pid形式
  6. 天线3db波束宽度_天线波束宽度计算公式
  7. python保存数据_Python 保存数据的方法(4种方法)
  8. 怎样把python源程序发给别人_如何把Python源码打包成EXE文件?以及bug
  9. 抠图为什么要用绿布_《暮白首》为什么如此火爆?五个原因带你深度剖析
  10. 如何访问云端的tcpserver_远程读写FTP文件,花生壳盒子+Serv-U快速实现远程访问...