位置參數:
import math
def dis(x1,y1,x2,y2):
print("x1={},y1={},x2={},y2={}".format(x1,y1,x2,y2))
return math.sqrt((x2-x1)**2+(y2-y1)**2)
print(dis(1,2,3,4))
output:
x1=1,y1=2,x2=3,y2=4
2.8284271247461903
關鍵字參數:
import math
def dis(x1,y1,x2,y2):
print("x1={},y1={},x2={},y2={}".format(x1,y1,x2,y2))
return math.sqrt((x2-x1)**2+(y2-y1)**2)
print(dis(x2=3,x1=1,y2=4,y1=2))
output:
x1=1,y1=2,x2=3,y2=4
2.8284271247461903
位置參數與關鍵字參數混合:
import math
def dis(x1,y1,x2,y2):
print("x1={},y1={},x2={},y2={}".format(x1,y1,x2,y2))
return math.sqrt((x2-x1)**2+(y2-y1)**2)
print(dis(1,2,y2=4,x2=3))
output:
x1=1,y1=2,x2=3,y2=4
2.8284271247461903
默認值參數:
import math
def dis(x1=1,y1=2,x2=3,y2=4):
print("x1={},y1={},x2={},y2={}".format(x1,y1,x2,y2))
return math.sqrt((x2-x1)**2+(y2-y1)**2)
print(dis(3,2))
output:
x1=3,y1=2,x2=3,y2=4
2.0
def init(arg,result=[]):
result.append(arg)
print(result)
init("a")
init("b")
init(1,[1,2,3])
output:
['a']
['a', 'b']
[1, 2, 3, 1]
數量可變參數:
- 當函數參數個數不確定時,“*”將一組可變數量的位置參數集合成參數值的元組
def countnum(a,*b):
print(b)
print(len(b)+1)
countnum(1,2,3)
countnum(1,2,3,4,5,6)
output:
(2, 3)
3
(2, 3, 4, 5, 6)
6
def countnum(**d):
print(d)
print(len(d))
countnum(x1=1,y1=2,x2=3,y2=4)
output:
{'x1': 1, 'y1': 2, 'x2': 3, 'y2': 4}
4