函数
内置函数: print() input() int() str() range() …
1.创建函数
自定义函数: 先定义后执行
def 函数名([参数]):
函数体
return [指定返回值]
def fun():
if b==1:
print("登录功能")
elif b==2:
print("注册功能")
else:
print("请重新输入功能编号")
fun()
2.函数参数
有参函数:
形参:定义函数时写在函数后面的括号中
实参:调用函数时写在函数后面的括号中 向形参赋值
1.默认参数
就是在参数定义时,
2.位置参数
调用函数时传入实际参数的数量和位置都必须和定义函数时保持一致
3.关键字参数
同过键-值得形式加以指定,通过名字确定输入的参数值
4.可变参数
不确定传入的参数个数是多少个 *param 定义可变位置参数 **param 定义可变关键字参数
def fun(a,b,*abc): #位置参数和可变位置参数
print(a)
print(b)
print(abc)
fun(1,2,'a','b',23)
def exp(x=2,y=3,**args): #关键字参数和可变关键字参数
print(x)
print(y)
print(args)
exp(x=4,y=5,a='a', b='b')
函数返回值
return 返回值
返回值:
通过return指定返回值 如果不指定返回值就会返回None
可以一次返回多个值,将多个返回结果封装成一个元组
全局变量和局部变量
局部变量是在函数体内部定义的变量,
全局变量是在函数外的变量
全局变量不能直接在函数内赋值,如果局部变量和全局变量都有定义,
在函数内会使用局部变量覆盖全局变量
如果想要在函数内部使用全局变量,并且对其操作, 需要使用关键字 global
函数可以和for循环,if结合使用
示例:
冒泡排序
list1=[12,7,56,77,35]
def sort_list(list):
n=len(list)
i=0
j=i
for i in range(n-1):
for j in range(n-1-i):
if list[j]<list[j+1]:
list[j],list[j+1]=list[j+1],list[j]
sort_list(list1)
print(list1)