(1)定义:
def 函数 (参数) 代码1 代码2 .....
(2)调用:
函数名(参数)
P.S:(1)在python 中,函数必须先定义后使用。
(2)定义函数时代码不执行,调用时执行。
# 演示 def add_func(a, b): return a+b a = 1 b = 2 print(add_func(a, b)) # 3
def add_func(a, b): """ 函数说明 :param a:参数1 :param b:参数2 :return:返回值 """ return a+b help(add_func)
(1)书写:函数名下一行,三引号内
(2)查看:help()函数
(1)局部变量:只在函数体内部的变量,函数结束即销毁
(2)全局变量:函数体内外可用的变量
a = 100 # 全局变量 print(a) # 输出全局变量a,100 def function1(): print(a) # 输出全局变量a,100 def function2(): a = 200 # 局部变量,全局变量不变 print(a) # 输出局部变量a,200 def function3(): global a # 声明全局表量 a =200 # 修改全局变量 print(a) # 输出全局变量a,200 function1() function2() print(a) # 输出全局变量a,100 function3() print(a) # 输出全局变量a,200
def return_num(): return 1, 2 # 逗号隔开,默认返回元组返回 # 另:return 后面可以直接书写元组,字典,列表 print(return_num()) # (1, 2)
位置参数 |
调用函数时根据函数定义的参数位置来传递参数 def user(name,age,gender):
print(f‘您得名字{name},年龄{age},性别{gender}‘)
user(‘tom‘,20,‘男‘)
|
关键字参数 |
函数调用通过‘键=值’来加以制定,不分先后顺序 user(‘Tom‘,gender=‘男‘,age=16)
P.s:函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序 |
缺省参数 |
用于定义函数,为参数提供默认值,调用函数时可不传该默认参数得值 def user(name,age,gender=‘男‘):
print(f‘您得名字{name},年龄{age},性别{gender}‘)
user(‘小米‘,20) #gender不传参,默认为男
user(‘小米‘,66,gender=‘女‘) #gender传参,修改默认值,改为女
(P.s: 所有参数必须出现在默认参数前) |
不定长参数 |
定义函数时不确定传参个数使用
def user(*args):
print(args)
user(‘小米‘,20)
user(‘小米‘)
def user(**kwargs):
print(kwargs)
user(name=‘小米‘,age=20, id=110)
user(name=‘小米‘,age=66,gender=‘女‘)
|
(1)元组:
def return_num(): return 100,200 #元组拆包 num1,num2=return_num() print(num1) # 100 print(num2) # 200
(2)字典
dict1 = {‘name‘:‘Tom‘,‘age‘:18} #字典拆包 a,b=dict1 #取键 print(a) # name print(b) # age #取值 print(dict1[a]) # Tom print(dict1[b]) # 18
原文:https://www.cnblogs.com/LynHome/p/12468278.html