def 函数名(函数参数):
语句块
def test(a,b=1):
if b==1:
return a;
else:
return b;
test(3)
3
test(3,4)
4
test(b=2,a=3)
2
b为可选参数,默认为1
可选参数放在必选参数后面
参数传递两种方法:
1、按位置传递::
test(3,4)
2、按名称传递:
test(b=2,a=3)
按名称传递时,根据变量名对应赋值,不考虑其位置
def test(a,*b):
if b==1:
return a;
else:
return max(b);
test(3)
3
test(3,4,5)
5
test(5,2,3,4)
4
b为可变参数
函数返回值
没有返回值时:
1、不适用return
2、使用return,但是不添加对应的值
有多个返回值时:
元组类型:( ,,)
全局变量和局部变量
1、函数内部与全局变量同名的变量为局部变量
函数内部使用全局变量,用global定义
2、局部变量为组合数据类型且未创建,等同于全局变量
lambda函数:
函数名=lambda 参数:表达式
f=lambda x,y:x+y
f(10,15)
25
PyInstaller:生产exe文件
cmd命令行:
安装PyInstaller库:pip install PyInstaller
打包可执行文件:pyinstaller -F <文件名.py>
生产的dist中同名exe文件为该文件的可执行文件;
参数:
–clean:清理打包过程中的临时文件
-D,–onedir:默认值,生产dist文件
-F,–onefile,
-i <图标名称.ico>:用指定图标作为exe图标