函数
def <函数名>(<参数#一个或者多个>):
<函数体>
return <返回值>
函数定义时,所指定的参数时一种占位符。
函数定义后,如果不经过调用,不会被执行
函数定义时,参数是输入,函数体是处理,结果是输出(IPO)
函数的调用
调用时运行函数代码的方式
函数可以有参数,也可以没有,但必须保留括号
函数可以有返回值,也可以没有返回值,没有返回值时可以不写return保留字
可选参数
def<函数名>(<非可选参数,可选参数>):
<函数体>
return <返回值>
#非可选参数要写在可选参数前面
可变参数 即不确定参数的数量
def<函数名>(<参数>,*b):
<函数体>
return <返回值>
函数调用时参数可以按照位置或者名称方式传递
位置传递
def fun(a,b):
return a/b
fun(3,4)
名字传递
def fun(a,b):
return a/b
fun(b=3,a=4)
局部变量与全局变量
在函数内使用的变量为局部变量
在程序中使用的变量为全局变量
global保留字在函数中作用 把指定的变量变成全局变量
局部变量为组合数据类型且未创建,等同于全局变量
lambda函数
返回函数名作为结果
<函数名> = lambda<参数>:<表达式>
#只能使用简单的表达式
模块化设计
通过函数式对象封装讲程序划分为模块及模块之间的表达
具体包括:主程序,子程序和子程序之间的关系
分而治之:一种分而治之,分层抽象,体系化的设计思想
紧耦合:两个部分交流很多,无法独立存在
松耦合:两个部分交流很少,可以独立存在
递归
两个关键特征:
链条:计算过程存在递归链条
基例:存在一个或多个不需要递归的基例
pyinstaller库
<cmd命令行> pyinstaller -F <文件名.py>
#将.py文件打包成exe可执行文件
常用参数
参数 | 描述 |
---|---|
-n | 查看帮助 |
-clean | 清理打包过程中的临时文件 |
-D,–onedir | 默认值,生成dis文件夹 |
-F,–onfile | 在dis文件夹中生成独立的打包文件 |
-i | <图标文件名.ico>指定打包程序使用的图标 |
<cmd命令行> pyinstaller -i <图标文件名.ico> -F <文件名.py>