如何於python 函數中使用*args?

在 Python 中,*args 是函數定義中使用的特殊語法,當你事先不知道有多少個參數可能傳遞給函數時,*args 語法可讓您向函數傳遞可變數量的位置參數。

這是一個簡單的例子來說明 *args 如何運作:

def print_numbers(*args):

    for number in args:

        print(number)

print_numbers(1, 2, 3, 4, 5)

Output:

1

2

3

4

5

在這個例子中,print_numbers 函數可以接受任意數量的參數,然後逐一列印。

你也可以將 *args 與常規位置參數和關鍵字參數結合,但是,*args 必須位於函數定義中的任何常規參數之後:

def greet(greeting, *names):

    for name in names:

        print(f”{greeting}, {name}!”)

greet(“Hello”, “Alice”, “Bob”, “Charlie”)

Output:

Hello, Alice!

Hello, Bob!

Hello, Charlie!

我們再看多一個例子:

def sum_numbers(*args):   

return sum(args) 

print(sum_numbers(1, 2, 3))  

Output: 6

6print(sum_numbers(10, 20, 30, 40)) 

Output: 100

由此可見,你可透過*args,編寫更清晰、更有效率的程式碼,以處理各種輸入場景。

Share your thoughts