\

Pythonでは、特殊な記号を使用して関数に可変数の引数を渡すことができます。これには2つの特殊な記号があります: *args (非キーワード引数)と**kwargs (キーワード引数)です。

*argsとは何ですか?

特殊な構文*argsは、Pythonの関数定義で可変数の引数を関数に渡すために使用されます。これは、キーワードを伴わない、可変長の引数リストを渡すために使用されます。*argsを使用すると、事前に定義した形式引数よりも多くの引数を取ることができます。*argsを使用すると、現在の形式引数に任意の数の追加引数を追加できます(追加引数がゼロでも可能)。

例えば、任意の数の引数を掛け合わせる関数を作りたいとします。これは*argsを使用して実現できます。*を使用すると、*に関連付けられた変数が反復可能になり、反復処理を行ったり、mapfilterなどの高階関数を実行したりすることができます。

def myFun (*argv): 
    for arg in argv: 
        print(arg) 

myFun ('Hello', 'Welcome', 'to', 'GeeksforGeeks')

出力:

Hello
Welcome
to
GeeksforGeeks

**kwargsとは何ですか?

特殊な構文**kwargsは、Pythonの関数定義でキーワード付きの可変長引数リストを渡すために使用されます。名前kwargsと二重のアスタリスクを使用します。二重のアスタリスクを使用する理由は、キーワード引数(およびそれらの任意の数)を通過させることができるからです。キーワード引数とは、変数に名前を提供して関数に渡すことです。kwargsを辞書と考えることができます。それぞれのキーワードを値にマッピングします。そのため、kwargsを反復処理すると、出力される順序が一定でないように見えます。

def myFun (**kwargs): 
    for key, value in kwargs.items(): 
        print ("%s == %s" %(key, value))

myFun(first ='Geeks', mid ='for', last='Geeks') 

出力:

first == Geeks
mid == for
last == Geeks

以上がPythonで可変長引数を扱う基本的な方法です。これらの概念を理解し、適切に使用することで、より柔軟で再利用可能なコードを書くことができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です