Python之函式的相關介紹

ciscopuke發表於2021-09-11

Python之函式的相關介紹

函式的作用

1.減少重複程式碼

2.方便修改,更易擴充套件

3.保持程式碼一致性

函式的命名規則:

1.函式名必須以下劃線或字母開頭,可以包含任意字母,數字或下劃線的組合,不能使用任何的標點符號。

2.函式名區分大小寫。

3.函式名不能是保留字。

形參和實參

形參: 形式引數,不是實際存在的,是虛擬變數。

實參: 實際引數,呼叫函式時傳給函式的引數,可以是常量,變數,表示式,函式,傳給形參。

舉個例子:

def add(x, y):             # 這裡 add(x, y) 裡面中的 x, y 就是形參
    print(x + y)
add(1, 2)                  # 呼叫 add(1, 2) 函式里面的 1, 2 就是實參

執行結果:

3

函式引數分類

1.必備引數:

必備引數必須按正確的順序傳入,數量與申明時一致。

def person(name, age):
    print('My name is %s, age %d' %(name, age))
person('klvchen', 28)

執行結果:

My name is klvchen, age 28

2.關鍵字引數

函式使用關鍵字引數進行呼叫時,允許引數的順序與宣告時不一致。

def person(name, age):
    print('My name is %s, age %d' %(name, age))
person(age = 28, name = 'klvchen')

執行結果:

My name is klvchen, age 28

相關推薦:《》

3.預設引數

呼叫函式時,使用者如果沒有傳入預設的值,則被認為是預設值。預設引數只能放在最後。

def person(name, age, sex = 'male'):
    print('My name is %s, age %d sex is %s' %(name, age, sex))
person(age = 28, name = 'klvchen')

執行結果:

My name is klvchen, age 28 sex is male

當使用者需要傳入非預設引數時:

def person(name, age, sex = 'male'):
    print('My name is %s, age %d sex is %s' %(name, age, sex))
person('lily', 18, 'female')

執行結果:

My name is lily, age 18 sex is female

4.不定長引數

事先沒有規定使用者輸入的引數數量。

(*args)只存放未命名的變數引數,使用者輸入的引數會組成元組方式傳入。

def add(*args):
    print(args)
    total = 0
    for i in args:
        total += i
    print(total)
add(1, 2, 3)

執行結果:

(1, 2, 3)
6

(**kwargs)只存放命名的變數引數,使用者輸入的引數會組成字典方式傳入。

def person(**kwargs):
    print(kwargs)
    for i in kwargs:
        print("%s : %s" %(i, kwargs[i]))
person(name='klvchen', job='IT')

執行結果:

{'name': 'klvchen', 'job': 'IT'}
name : klvchen
job : IT

(*args)和(**kwargs)配合一起使用即可以接受使用者輸入的全部引數:

def person( *args, **kwargs):
    print(args)
    print(kwargs)
    print()
    for l in args:
        print(l)
    for i in kwargs:
        print("%s : %s" %(i, kwargs[i]))
person(1, 2, 3, 4, name='klvchen', job='IT')

執行結果:

(1, 2, 3, 4)
{'name': 'klvchen', 'job': 'IT'}
1
2
3
4
name : klvchen
job : IT

函式的返回值

函式返回單個值

def test():
    return 'hello world'
result = test()
print(result)

執行結果:

hello world

函式返回多個值

def test():
    return 1, [2, 3]
result = test()
print(result)

執行結果:

(1, [2, 3])

注意:

1.如果函式沒有 return 關鍵字,預設會返回 None。

2.如果函式 return 多個值,Python 會把多個值組成一個元組返回。

3.函式在執行過程中如果遇到 return 關鍵字就會停止執行並返回結果,return 代表著函式的結束。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4369/viewspace-2837189/,如需轉載,請註明出處,否則將追究法律責任。

相關文章