'''
1.預設引數
2.關鍵字引數
3.非固定引數
4.區域性變數
'''#預設引數
def student(name, age, ***, address):
print(name, age, ***, address)
#關鍵字引數----關鍵引數必須放在預設引數之後
def student2(name, age, address, ***='男'):
print(name, age, ***, address)
#非固定引數
def student3(name, age, address, *args):
print(name, age, address, args)
#非固定引數
def student4(name, age, address, **kwargs):
print(name, age, address, kwargs)
#區域性變數
name = 'xiaohua'
def say(name):
print('befor--name:'+name)
name = '小華'
print('say--name:'+name)
student('小華', '21', '男', '中國')
#改變順序
student('21', '小華', '中國', '男')
print('------------這是分割線--------------')
student2('小華', '21', '中國')
student2('小華', '21', '中國', ***='女')
print('------------這是分割線--------------')
student3('小華', '21', '中國')
student3('小華', '21', '中國', '可愛', '迷人')
print('------------這是分割線--------------')
student4('小華', '21', '中國', dic1='可愛', dic2='迷人')
print('------------這是分割線--------------')
say(name)
結果展示:
小華 21 男 中國
21 小華 中國 男
------------這是分割線--------------
小華 21 男 中國
小華 21 女 中國
------------這是分割線--------------
小華 21 中國 ()
小華 21 中國 ('可愛', '迷人')
------------這是分割線--------------
小華 21 中國
------------這是分割線--------------
befor--name:xiaohua
say--name:小華
總結:1.預設引數
預設按照函式順序,傳參時按照函式順序即可。
2.關鍵字引數
必須放在預設引數後面
3. *args 實際是(),如:()、('可愛', '迷人');
*args,前面不能跟關鍵引數,會報錯4. **kwargs 實際是字典,如:;
**kwargs,前面可以跟關鍵引數5. 區域性變數
在子程式中定義的變數稱為區域性變數,在程式的一開始定義的變數稱為全域性變數。
全域性變數作用域是整個程式,區域性變數作用域是定義該變數的子程式。
當全域性變數與區域性變數同名時:
在定義區域性變數的子程式內,區域性變數起作用;在其它地方全域性變數起作用。
python函式的四種引數傳遞方式
python中函式傳遞引數有四種形式 fun1 a,b,c fun2 a 1,b 2,c 3 fun3 args fun4 kargs 四種中最常見是前兩種,基本上一般點的教程都會涉及,後兩種一般很少單獨出現,常用在混合模式中 第一種fun1 a,b,c 是直接將實參賦予行參,根據位置做匹配,即嚴格...
python函式的四種引數傳遞方式
python中函式傳遞引數有四種形式 fun1 a,b,c fun2 a 1,b 2,c 3 fun3 args fun4 kargs 四種中最常見是前兩種,基本上一般點的教程都會涉及,後兩種一般很少單獨出現,常用在混合模式中 第一種fun1 a,b,c 是直接將實參賦予行參,根據位置做匹配,即嚴格...
python3函式的引數
函式的定義能簡化 的邏輯,對於函式的呼叫者來說,只需要知道如何正確的傳遞引數,以及知道函式將返回什麼值就可以了,而函式內部的複雜邏輯被封裝起來,呼叫者不必了解。呼叫函式時,傳入實參的值按照位置順序以此賦給形參。def power x,n s 1 while n n n 1s s x return s...