Python 兩種可變引數區別

2021-10-12 04:46:10 字數 794 閱讀 7126

python函式傳遞引數的方式有兩種:

位置引數(positional argument)

*args**kwargs都是python中的可變引數。

*args表示任何多個無名引數,允許使用者傳送乙個非鍵值對的可變數量的引數列表給乙個函式,它本質是乙個 tuple

**kwargs表示關鍵字引數,允許使用者將不定長度的鍵值對作為引數傳遞給乙個函式,它本質上是乙個 dict

同時使用*args**kwargs時,必須*args引數列要在**kwargs前。

def

foo(a, b=

'commit'

,*c,

**d)

:print

(a, b, c, d)

foo(

1, z=

'merge'

, b=

'clone'

, x=

6, y=7)

foo(1,

2,'push',5

, x=

'pull'

, y=

'chekcout'

)

結果如下:

1 clone ()1

2('push',5

)

include的兩種區別

c 中經常會用到 include 和 include 它們到底有什麼區別呢?1.引入標準庫檔案 include filename.h 格式引用標準庫的標頭檔案。編譯器將從標準庫目錄開始搜尋。標準庫目錄是在開發環境中設定的庫檔案的路徑。如圖 2.也就是說編譯器會到這兩個路徑中找引用的檔案,如果找不到,...

python requests傳兩種引數體

在jmeter請求引數中,我們了解到,在做介面測試時,傳送請求的引數有兩種格式,一種是parameters,一種是json。怎麼區分請看 那在python中,怎麼使用requests傳這兩種格式的引數呢?import requests parameters引數體 data rs requests.r...

python帶引數裝飾器的兩種寫法

前言 最近在實現乙個裝飾器的過程中發現了乙個很有意思的地方,在部落格裡面分享出來 不同的寫法 三層函式巢狀,實現了可傳引數的乙個裝飾器。import logging import functools deflogger msg none 日誌 defdector func functools.wra...