2012-03-28 15 views
-1

可能性の重複:
What does *args and **kwargs mean?
Understanding kwargs in Python引数とジャンゴ** kwargsから

私は次のようにDjangoフレームワークでは、いくつかの奇妙な構文を見つけた:

class Blog(models.Model): 
    name = models.CharField(max_length=100) 
    tagline = models.TextField() 

    def save(self, *args, **kwargs): 
     do_something() 
     super(Blog, self).save(*args, **kwargs) # Call the "real" save() method. 
     do_something_else() 

マイ質問は:星はarの名前で何を意味するのでしょうか?記念碑。 Cにポインタを持つものはありますか? おかげ

+2

読む:のhttp:// WWW .saltycrane.com/blog/2008/01/how-to-use-args-and-kwargs-in-python/ – Blender

+0

も同様の質問を読むhttp://stackoverflow.com/questions/3394835/args-and-kwargs –

+0

他:http://stackoverflow.com/questions/287085/what-does-args-and-kwargs-mean – alan

答えて

0

あなたはこれらの引数を使用してsaveを呼び出す場合:

save(1,2,3,4,a=20,b=30,c=40) 

は、argsTuplekwargsすなわち(1,2,3,4)に等しくなりますdictionary

これら*および** {'a':20,'b':30,'c':40}に等しくなります表記法は、Pythonで引数を収集するために使用され、ポインタではありません。

+0

お返事ありがとうございました! – nam

0

これは、Pythonの引数の構文です:

  • *引数 - 無名の引数のリスト
  • ** kwargsから - ここではそれらについての辞書(名前付き引数)
関連する問題