一、定义一个函数
1、语法
def 函数名(参数):
函数体
#自定义一个函数 def text(): print("hello word") text() #自定义一个带参的函数 def sum(a,b): return a+b print(sum(10,10)) def hi(name): print ("hi,",name) hi("zz")
2、参数传递
、、、、
3、参数
- 必需参数(位置参数)
- 必须以正确的顺序传入函数,调用时的数量必须和声明时的数量一样
- 关键字参数
- 使用关键字参数允许函数调用参数的顺序与声明时不一致,因为Python解释器能够用参数名匹配参数值
- 默认参数
- 调用函数时,如果没有传递参数,怎会调用默认参数
def Text(name,age=18): print("名字:",name) print("年龄:",age) return Text(name="杨幂",age=32) Text(name="杨幂")
- 不定长参数
- 在某些情况下,函数的参数的个数是不固定的。可以传入参数,也可以选择不传递参数,可以传递一个参数,也可以传递多个,语法格式:def 函数名(*参数名):
- 加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。
#可变参数 def Text(a,*b): print(a) print(b) Text(11,22,222) #输出结果为: #11 #(22, 222) Text(11,22) #输出结果为: #11 #(22,)
4、匿名函数
略
5、变量作用域
一个程序的所有的变量并不是在哪个位置都可以访问的。访问权限决定于这个变量是在哪里赋值的,变量的作用域决定了在哪一部分程序你可以访问哪个特定的变量名称。
全局作用域不能调用函数作用域中的变量,但是函数作用域可以调用全局作用域中的变量;若在函数作用域中修改全局作用域中的值,则使用global 声明
- 全局变量(全局作用域)
- 局部变量(函数作用域)