码迷,mamicode.com
首页 > 其他好文 > 详细

第四周练习 part4

时间:2018-04-04 23:22:50      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:元组   port   col   UNC   大于   匿名函数   too   post   lam   

 1 # 可迭代的数据类型 和 迭代器
 2 
 3 from collections import Iterator
 4 from collections import Iterable
 5 ‘‘‘可作用于 for 循环的对象都可迭代
 6 可作用于 next() 函数的都是迭代器‘‘‘
 7 
 8 # 列表、字典、元组都可迭代,但都不是迭代器
 9 print(列表、字典、元组、字符串可迭代吗?)
10 print(isinstance([], Iterable))
11 print(isinstance({}, Iterable))
12 print(isinstance((), Iterable))
13 print(isinstance(abc, Iterable))
14 # 生成器一定可迭代
15 print(生成器可迭代吗?)
16 print(isinstance((i for i in range(10)), Iterable))
17 # 生成器还一定是迭代器
18 print(列表、元组、字典是迭代器吗?)
19 print(isinstance((), Iterator))
20 print(isinstance([], Iterator))
21 print(isinstance({}, Iterator))
22 print(生成器一定是迭代器吗?)
23 print(isinstance((i for i in range(10)), Iterator))
24 
25 a = [1, 2, 3]
26 b = iter(a)  # 将列表变成迭代器
27 print(b.__next__())  # 迭代器才能用 next 方法
28 print(next(b))
 1 # 匿名函数
 2 
 3 clac = lambda a: print(a)
 4 clac(9)
 5 
 6 clac1 = lambda a:4 if a<4 else a
 7 print(clac1(1))
 8 
 9 # filter_筛选
10 res = filter(lambda n: n>5, range(10))  # range(10)是一个列表,filter将列表里大于5的数筛选出来
11 for i in res:
12     print(i)
13 
14 # map_处理
15 res1 = map(lambda n: n*n, range(10))  # 将列表里的所有数进行处理
16 for i in res1:
17     print(i)
18 
19 # reduce_
20 import functools
21 res2 = functools.reduce(lambda x, y: x*y, range(1, 5))
22 print(res2)

 

第四周练习 part4

标签:元组   port   col   UNC   大于   匿名函数   too   post   lam   

原文地址:https://www.cnblogs.com/lief/p/8718859.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!