码迷,mamicode.com
首页 > 编程语言 > 详细

python学习手册中的一些易忘的点(4-7部分)

时间:2018-08-21 13:08:50      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:高聚合低耦合   高聚合   类型   改变   lis   lse   reduce   使用   统一   

有时间系统看一遍python学习手册,记录一些易忘点

1.python函数高聚合低耦合
1)对于输入使用参数并且对于输出使用return
2)只有在真正必要的情况下使用全局变量
3)不要改变可变类型的参数,除非调用者希望这样做
4)每个函数都应该有一个单一的、统一的目标
5)每一个函数应该相对较小
6)避免直接改变在另一个文件中的变量

2.递归处理任意结构
>>> a=[3,[2,[2,3,4],2],1,[1,5,[1,3,3]]]
>>> def sumtree(L):
...   tot=0
...   for x in L:
...     if not isinstance(x,list):
...       tot+=x
...     else:
...       tot+=sumtree(x)
...   return tot
...
>>> sumtree(a)
30
>>>

3.lamdba,map,filter,reduce用法
>>> map((lambda x: x+3),[1,2,3,4,5,6])
[4, 5, 6, 7, 8, 9]
>>> map((lambda x,y: x+y),[1,2,3,4,5,6],[2,3,4,5,6,7])
[3, 5, 7, 9, 11, 13]
>>>
>>> filter((lambda x: x%2==0),[1,2,3,4,5,6])
[2, 4, 6]
>>> reduce((lambda x,y: x+y),[1,2,3,4,5,6])
21
>>> reduce((lambda x,y: x*y),[1,2,3,4,5,6])
720
>>>

 

>>> filter((lambda x: x%2==0),[1,2,3,4,5,6])
[2, 4, 6]
>>> reduce((lambda x,y: x+y),[1,2,3,4,5,6])
21
>>> reduce((lambda x,y: x*y),[1,2,3,4,5,6])
720
>>>

python学习手册中的一些易忘的点(4-7部分)

标签:高聚合低耦合   高聚合   类型   改变   lis   lse   reduce   使用   统一   

原文地址:https://www.cnblogs.com/Micang/p/9510706.html

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