1.事前に存在する実際のパラメーターの数がわからない。以下の操作を使用して、関数が呼び出しステートメントから任意の数の実パラメーターを収集できるようにすることができます。
def function_name(*test):
print(test)
function_name('1')
function_name('1','2','3')
出力結果:
('1',)
('1', '2', '3')
仮パラメーター* testは、testという名前の空のタプルを作成し、受け取ったすべての値をこのタプルにカプセル化するようにpythonに指示します。
2.関数が異なるタイプの実パラメーターを受け取るようにする場合は、関数定義の仮パラメーターの最後に、任意の数の実パラメーターを受け取る仮パラメーターを置く必要があります。
def function_name(size,*tests):
print("\n"+str(size))
for test in tests:
print(test+' ')
function_name(12,'1')
function_name(12,'1','2','3')
3.関数に渡される情報を事前に知らなくても、任意の数のキーワード引数を使用できます。
サンプルコードは以下の通りです
def function_name(first,last,**user_info):
profile={}
profile['first_name'] = first
profile['last_name'] = last
for key,value in user_info.items():
profile['key'] = value
return profile
user_profile = function_name('albert','einstein',location = 'princeton',field = 'physics')
print(user_profile)
出力結果:
{'first_name': 'albert', 'last_name': 'einstein', 'key': 'physics'}
関数function_name()を呼び出し、名前「albert」と姓「einstein」、および2つのキーと値のペア(location = 'princeton'とfield = 'physics')を渡し、返されたプロファイルをuser_profileに保存します。