SORU
9 Mayıs 2011, PAZARTESİ


Değişken uzunlukta konumsal tartıştıktan sonra Python, varsayılan anahtar kelime argümanlar

Düşündüm kullanabileceğimi adlı parametrelerin sonra değişken uzunlukta konumsal parametreler içinde bir işlev çağrısı, ama ben bir sözdizimi hatası olduğunda ithal eden bir python sınıf yazıyorum aşağıdaki "get" yöntemi, örneğin:

class Foo(object):
    def __init__(self):
        print "You have created a Foo."

    def get(self,*args,raw=False,vars=None):
        print len(args)
        print raw
        print vars

Hata gibi görünüyor:

def get(self,*args,raw=False,vars=None):
                     ^
SyntaxError: invalid syntax

Yöntem çeşitli yollarını aramak mümkün olmak istiyorum

f = Foo()
f.get(arg1,arg2)
f.get(arg1,raw=True)
f.get(arg1,arg2,raw=True,vars=something)

...vb.

Elimden geldiğince RTFM ettim, ama bu işe yaramaz neden oldukça tıklatın değil. Yardımlarınız için şimdiden teşekkürler.

-j

CEVAP
9 Mayıs 2011, PAZARTESİ


İş, ama sadece Python 3'te yok. PEP 3102 bkz. "" Belgeler, 2.hayır var ne bakarak yerinden x, dahil şansın yok. Bunu kabul etmelisin herhangi bir anahtar kelime argümanlar (**kwargs) ve el ile ayrıştırma (kullanabilirsiniz d.get(k, default) de d[k] default eğer yok).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • tseyina

    tseyina

    2 AĞUSTOS 2006
  • UsherVEVO

    UsherVEVO

    15 EKİM 2009
  • Wronchi Animation

    Wronchi Anim

    9 Mayıs 2011