ホームページ >バックエンド開発 >Python チュートリアル >*args と kwargs は Python で関数の引数の柔軟性をどのように強化できるでしょうか?

*args と kwargs は Python で関数の引数の柔軟性をどのように強化できるでしょうか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-19 13:53:14148ブラウズ

How Can *args and kwargs Enhance Function Argument Flexibility in Python?

関数の引数の汎用性を高めるための args と kwargs の使用*

プログラミングでは、引数を柔軟に処理できると便利です関数内で。ここで args と *kwargs が登場します。

args と kwargs について*

  • args: (位置引数) の可変数を受け取ります。タプル形式の位置引数。
  • kwargs: (キーワード引数) 辞書形式で可変数のキーワード引数を受け取ります。

args とkwargs*

  • 拡張可能な引数処理: 任意の数またはタイプの引数を受け入れることができる関数を定義できます。
  • ワイルドカード引数: 関数に任意の引数を渡し、それらを照合します。

簡単な例

  • 位置引数(*args):
def print_items(*args):
    for item in args:
        print(item)

print_items("apple", "banana", "cherry")

出力:

apple
banana
cherry
  • キーワード引数(kwargs):**
def print_info(**kwargs):
    for key, value in kwargs.items():
        print(f"{key} = {value}")

print_info(name="John Doe", age=30)

出力:

name = John Doe
age = 30

名前付きとの併用引数

def print_student(name, **kwargs):
    print(f"Name: {name}")
    for key, value in kwargs.items():
        print(f"{key} = {value}")

print_student("Jane Smith", major="Engineering", GPA=3.8)

出力:

Name: Jane Smith
major = Engineering
GPA = 3.8

関数呼び出しでの使用法

def sum_numbers(*args):
    total = 0
    for num in args:
        total += num

nums = [1, 2, 3, 4, 5]
result = sum_numbers(*nums)  # Unpack the list into positional arguments

この例では、*numsリストを個々の位置引数に展開し、sum_numbers 関数がそれらを変数の数として処理できるようにします。引数。

以上が*args と kwargs は Python で関数の引数の柔軟性をどのように強化できるでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。