seslendiğini: addl
bir şeyler yapmak dizeleri herhangi bir sayıda (dosya adları) olabilirPython gibi bir tanımla (piton 2.5) Bir piton fonksiyonu var pozisyonel argüman
def Foo(a, b='Silly', c='Walks', d='Spam', e='Eggs', f='Ni', *addl):
.
Tüm varsayılanlarla iyiyim, ancak addl
içine koymak için dosya adlarım var.
ben böyle bir şey yapmak eğilimindeyim:
Foo('[email protected]', addl=('File1.txt', 'File2.txt'))
Ama bu şu hatayı alır:
TypeError: Foo() got an unexpected keyword argument 'addl'
ben kısaca sadece ilk olanFoo
diyebileceği bir sözdizimi var mı gerekli parametre ve (değişken sayıda) ek dizelerim? Veya addl
bağımsız değişken aralığına girmeden önce tüm varsayılanları belirterek gereksiz yere sıkışmış mıyım?
Bağımsız değişken için, işlev tanımı değiştirilemez veya yeniden yüklenemez.
Sadece çalışmalı, tuple paketten: Foo ('[email protected] '* ('file1.txt File2',' sen
Foo(addl=('File1.txt', 'File2.txt'))
gibi işlevi çağırmak istiyorsanız*
bir daha eklemek gerekir .txt ')) – AndreyT@AndreyT: Bu işe yaramıyor. '' Dosya1.txt '' a a 've' File2.txt ''' 'a' a atar. – zondo
Evet, haklısın. Yani, 2.5 olası çözüm durumunda b, c, d, e, f parametreleri yerine kwargs kullanılır. – AndreyT