Python函式傳參位置關係總結

2021-10-03 20:04:18 字數 1920 閱讀 5613

一般傳參的函式

defprint_info

(name,age)

:print

('name: %s'

% name)

print

('age: %s'

%age)

print_info(

"ljj",15

)帶有預設值的傳參函式,有預設值的放在後面

defprint_info

(name,age=15)

:print

('name: %s'

% name)

print

('age: %s'

%age)

print_info(

"ljj",15

)數量可變引數

defadd

(*a)

: i=

0for temp in a:

i+=temp

print

(i)add(1,

2,3,

4,5,

6,7,

8,9,

10)*a是以元組的形式展示的

變數名和變數值可變的函式引數

defprint_info

(name,age,***,

**kwargs)

:print

('name: %s'

% name)

print

('age: %s'

% age)

print

('***: %s'

% ***)

for i in kwargs:

print

('%s:%s'

%(i,kwargs[i]))

print_info(

'ljj',18

,'female'

,job=

'it'

,hobby=

'girls'

,height=

188)

**kwargs以字典的形式展示的

可變長度的和變數名和變數值可變的函式引數組合函式

deff

(*args,

**kwargs)

:for temp in args:

print

(temp)

for i in kwargs:

print

('%s:%s'

%(i, kwargs[i]))

f(1,2

,3,4

,5,'1212',[

1,2,

5],name=

'alvin'

,age=23)

各種引數形式的組合

deffunc

(name,age=22,

*args,

**kwargs)

:print

('name: %s'

% name)

print

('age: %s'

% age)

for temp in args:

print

(temp)

for i in kwargs:

print

('%s:%s'

%(i, kwargs[i]))

func(

'lj',21

,3,4

,5,'1212',[

1,2,

5],name1=

'alvin'

,age1=

23)

總結

1,如果有預設引數,放在左邊,預設引數

2,關於不定長引數的位置:*args放在左邊,**kwargs放在右邊

優先順序順序為:一般函式引數》有預設值的函式引數》可變長度的函式引數》變數值可變的函式引數

python 函式傳參 傳參和傳引用

首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...

Python函式傳參

首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...

python 函式傳參

函式的好處 1.保持一致性 2.可重用 3.可擴充套件 函式的返回值 1.空,返回none 2.有乙個物件,返回當前物件 3.有多個物件,返回元組 tuple import time 定義函式,列印日誌時間 deflogger time format y m d x time current tim...