2017-11-28 46 views
0

私は関数を書いており、一度に異なる引数を取ることができるはずです。この関数の引数をどのように定義できますか?異なる引数を持つ関数

def function('005=5=0002555') 
def function('00025:001:002325', '/') 
def function(date='05-0004-002294', separator='/') 
def function(separator='*', date='0008=006=2001') 
def function('21 12 2012', separator='+') 
+1

は、[この]を見て(https://docs.python.org/3/tutorial /controlflow.html#more-on-defining-functions) –

+0

これは特別なケースです。同じ引数の場合は、デフォルトの引数( '00025:001:002325'、 '/')であり、時にはキーワード= '05 -0004-002294 '、separator ='/')、または場所を切り替える(separator =' * '、date =' 0008 = 006 = 2001 ')。誰でもこの経験がありますか? –

+3

私はちょうど普通のkwargsのような音... – Shadow

答えて

0

あなたは*args**kwargsの組み合わせを使用することができます:pythonのバージョンによって

def function(*args, **kwargs): 
    args1 = args if args else None 
    args2 = [kwargs.get(i) for i in ['date', 'separator']] 
+0

あなたはどのように引数にアクセスすることができますか?例:if dateがNoneの場合: s =期限切れ(args)+ 1856305 日付がNoneの場合: s =期限切れ( 'date')+ 1856305 –

関連する問題