İsteğe bağlı varsayılan argüman sayısını isteğe bağlı olarak bir Python işlevine iletmek mümkün mü? Örneğin,Koşullu olarak varsayılan olarak adlandırılmış bağımsız değişkenlerin sayısını bir tanıma geçirme
. bir işlev var:
def func(arg, arg2='', arg3='def')
Şimdi mantık ben arg3 geçti gerekiyorsa belirleyen bir durum var, ben böyle yapmak is:
if condition == True:
func('arg', arg2='arg2', arg3='some value')
else:
func('arg', arg2='arg2')
Soru şu ki, steno olabilir gibi: Aklıma
func('arg', 'arg2', 'some value' if condition == True else # nothing so default gets picked
)
Karşınızda ne var? ** ve *? – Erin
'' '' '' '' 'a karşı hiçbir şey. Sadece orijinal kodun daha okunabilir olduğunu düşünüyorum. Sanırım benden hoşlanmıyorum. –
Alternatif olarak, bir argüman sözlüğü oluşturmak için bazı koşullu mantık (işlev çağrısının dışında) kullanılabilir.Daha sonra '' 'ile geçilebilirler. Bu, daha fazla sayıda argümanla okunabilir durumda. – Wilduck