标签:内存 集合 sha color 作用 默认 inux 返回 hand
1、函数的定义
定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可。其特性如下:
2、语法定义
2.1 基本定义
1 def func1(): 2 ‘‘‘test1‘‘‘ #声明函数的作用 3 print("test function1") 4 return 0 #返回值 5 6 func1() #调用函数 7 x = func1() #将函数返回值赋值给x 8 print(x)
2.2 带有参数的函数
函数的参数又分为形式参数和实际参数:
1 def func1(x,y): 2 print(x) 3 print(y) 4 5 func1(1,2) #位置参数,实参与形参一一对应,与位置有关 6 func1(y=2,x=1) #关键字参数,与位置无关。但是需要注意的是:关键字参数必须在位置参数之后。 7 8 func1(10,y=20) 9 # func1(x=10,20) 这样写不行,因为关键字参数不能写在位置参数前面
默认参数:默认参数必须放在形参的后面。
1 #现有代码如下: 2 def stu_register(name,age,country,course): 3 print("----注册学生信息------") 4 print("姓名:",name) 5 print("age:",age) 6 print("国籍:",country) 7 print("课程:",course) 8 9 stu_register("王山炮",22,"CN","python_devops") 10 stu_register("张叫春",21,"CN","linux") 11 stu_register("刘老根",25,"CN","linux") 12 13 #发现country都是相同的,因此可以给该参数一个默认值: 14 def stu_register(name,age,course,country=‘CN‘): #默认参数必须放形参的后面 15 print("----注册学生信息------") 16 print("姓名:",name) 17 print("age:",age) 18 print("国籍:",country) 19 print("课程:",course) 20 21 stu_register("王山炮",22,"python_devops") 22 stu_register("张叫春",21,"linux") 23 stu_register("刘老根",25,"linux")
非固定参数:若你的函数在定义时不确定用户想传入多少个参数,就可以使用非固定参数
1 #*args:接收N个位置参数,转换成元组 2 def stu_register(name,age,*args): # *args 会把多传入的参数变成一个元组形式,且*args必须放在形参和默认参数之后 3 print(name,age,args) 4 5 stu_register("Alex",22) #Alex 22 () #输出:Alex 22 () #后面这个()就是args,只是因为没传值,所以为空元组 6 7 stu_register("Jack",32,"CN","Python") #输出:Jack 32 (‘CN‘, ‘Python‘) 8 9 #**kwargs:接收N个关键字参数,转换成字典 10 def stu_register(name,age,*args,**kwargs): # **kwargs 会把多传入的参数变成一个字典形式,且**kwargs必须放在*args之后 11 print(name,age,args,kwargs) 12 13 stu_register("Alex",22) #输出:Alex 22 () {}#后面这个{}就是kwargs,只是因为没传值,所以为空字典 14 15 stu_register("Jack",32,"CN","Python",sex="Male",province="ShanDong") #输出:Jack 32 (‘CN‘, ‘Python‘) {‘province‘: ‘ShanDong‘, ‘sex‘: ‘Male‘}
标签:内存 集合 sha color 作用 默认 inux 返回 hand
原文地址:http://www.cnblogs.com/Druidchen/p/7755677.html