上一篇:二级Python学习笔记(四)
有日子没写博客了,Python学习一度搁浅,说起来惭愧,人总是会懒的......不能再这样继续下去了,为了提高,为了梦想,打起精神! ~~~当然这期间也做了一些练习题,感觉前几章没啥难度,就是把一些操作符、运算符、 常用函数什么的记一记,多加练习。
函数定义:是程序的一种基本抽象方式,通过def保留字定义。
#函数定义规则 def <函数名>(<参数列表>): #多个参数用逗号分隔 <函数体> return <返回值列表> # 定义一个对整数n求阶乘的函数 def fact(n): s = 1 for i in range(1, n+1): s *= i return s
函数的调用:函数定义——调用——执行——返回
#函数调用规则 <函数名>(<实际赋值参数列表>) # 定义一个对整数n求阶乘的函数 def fact(n): s = 1 for i in range(1, n+1): s *= i return s # 调用整数阶乘的函数 print(fact(100))
参数定义时可以指定默认值,可选参数一般都放置在非可选参数后面,支持按照参数名称方式传递。
>>>def multiply(x, y = 10): print(x*y) >>>multiply(99) 990 >>>multiply(99, 2) 198 >>>multiply(x = 99) 990 >>>multiply(y = 2, x = 99) 198
函数返回值:使用return语句用来结束函数并将程序返回到函数被调用的位置继续执行。可以没有,不返回值。
>>>def multiply(x, y = 10): return x*y, x+y >>>s = multiply(99, 2) >>>print(s) (198, 101) >>>a,b = multiply(99, 2) >>>print(a) 198 >>>print(b) 101
局部变量:仅在函数内部使用的变量,函数退出时变量将不再存在。
全局变量:函数外定义的变量,在程序执行全过程有效。全部变量在函数内部使用时,需要提前使用保留字global声明。
#局部变量z >>>def multiply(x, y = 10): z = x*y return z >>>s = multiply(99, 2) >>>print(s) 198 >>>print(z) Traceback (most recent call last): File "<pyshell#11>", line 1, in <module> print(z) NameError: name 'z' is not defined #全局变量n >>>n = 2 >>>def multiply(x, y = 10): global n #声明全局变量 return x*y*n >>>s = multiply(99, 2) >>>print(s) 396
函数封装好处是代码复用。当更新函数功能时,所有被调用处的功能都被更新。减少函数间参数和返回值的数量。
模块化设计以功能块为基本单位,两个基本要求:1.紧耦合:尽可能合理划分功能块,功能块内部耦合紧密;模块或系统间关系紧密,存在较多或复杂的相互调用。紧耦合的缺点在于更新一个模块可能导致其它模块变化,复用较困难。2.松耦合:模块间关系尽可能简单,功能块之间耦合度低。一般基于消息或协议实现,系统间交互简单,代表了模块化,是总体设计原则。
~~~贪多嚼不烂,第6章看着内容不少,就先到这吧,明天见!
【版权声明】感谢转载,转载请注明出处。 李维山博客http://msllws.top