python-函數參數

位置參數:

  • 求兩點間距離
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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章