「python argument意思」的推薦目錄:
- 關於python argument意思 在 コバにゃんチャンネル Youtube 的最佳解答
- 關於python argument意思 在 大象中醫 Youtube 的精選貼文
- 關於python argument意思 在 大象中醫 Youtube 的精選貼文
- 關於python argument意思 在 Re: [問題] function argument * - 看板Python - 批踢踢實業坊 的評價
- 關於python argument意思 在 位置引數(Positional Argument)與關鍵字引數(Keyword Argument) 的評價
- 關於python argument意思 在 argument參數2023-精選在Instagram/IG照片/Dcard上的焦點 ... 的評價
- 關於python argument意思 在 Python 零基礎新手入門#07 Function (函式) - YouTube 的評價
- 關於python argument意思 在 tqdm/tqdm: A Fast, Extensible Progress Bar for Python and CLI 的評價
- 關於python argument意思 在 Newest Questions - Stack Overflow 的評價
python argument意思 在 大象中醫 Youtube 的精選貼文
python argument意思 在 大象中醫 Youtube 的精選貼文
python argument意思 在 位置引數(Positional Argument)與關鍵字引數(Keyword Argument) 的推薦與評價
Python 函式參數所接收的引數(Argument),主要可以分成兩種,分別為位置引數(Positional Argument)和關鍵字引數(Keyword Argment),以下我們先來看個 ... ... <看更多>
python argument意思 在 argument參數2023-精選在Instagram/IG照片/Dcard上的焦點 ... 的推薦與評價
argument 參數2023-精選在Instagram/IG照片/Dcard上的焦點新聞和熱門話題資訊,找argument參數,argument parameter區別,argument參數,argument python ... ... <看更多>
python argument意思 在 Re: [問題] function argument * - 看板Python - 批踢踢實業坊 的推薦與評價
※ 引述《walelile (wakaka)》之銘言:
: 我看別人程式碼的時候,看到作者宣告了一個function
: def foo(a, *, b=None, **kwds):
: ....
: 請問,'*'這個參數是什麼意思?是positional arguments嗎?
: 這是在python3.4.2的程式碼裡面看到的
: 謝謝指教
這是 Python 3(忘了哪一版)開始的新語法
代表終止 positional argument list
我想你應該知道
def foo(a, b=None):
可以用下面的任一方式使用
foo(1)
foo(1, 2)
foo(1, b=2)
foo(a=1, b=2)
等等
但這有個問題。Python 會優先使用 keyword arguments,所以下面這樣
foo(1, a=2)
會變成 a=2, b=1。這可能會造成 bug,因為如果參數列很長,
foo(1)
和上面的寫法很容易讓人搞混到底哪個參數是哪個。
為了避免上面的問題,傳統的做法會這樣設計
def foo(a, **kwargs):
b = kwargs.pop('b', None)
# 後面正常處理
但這樣使用者就可以亂傳,例如
foo(1, b=2, c=3, d=4)
所以你還得判斷如果 kwargs 裡面有 c 或 d 就要怎麼辦
如果參數多起來或者 a 還有 default value 之類的會讓你很想死
所以就有了 * 這個語法。它代表「後面的參數只能作為 keyword argument 使用」
如果把宣告改成這樣
def foo(a, *, b=None):
那麼
foo(1)
foo(1, b=2)
foo(a=1, b=2)
這些都還是可以用,但
foo(1, 2)
foo(1, a=2)
就不行,因為 b 只能用 keyword argument 傳入。
當然
foo(1, c=5)
也不行,因為根本沒這個參數啊!
這樣就可以讓你設計一些更好的 API
是個好東西啊,用過了就回不去了 XD
--
作者 Linux (Windows) 看板 C_and_CPP
標題 [問題] 如何確認是否 free 對記憶體
時間 Fri Nov 2 00:14:03 2012
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.94.175
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1418452831.A.4CF.html
※ 編輯: uranusjr (218.161.94.175), 12/13/2014 14:44:27
... <看更多>