Bu kod kötü değil, ama iyi programcılar kullanabilirsiniz koduBir sözlükte bir değeri pythonically olarak nasıl ayarlayabilirim?
if count.get('a') is None:
count['a'] = 0
Bu kod kötü değil, ama iyi programcılar kullanabilirsiniz koduBir sözlükte bir değeri pythonically olarak nasıl ayarlayabilirim?
if count.get('a') is None:
count['a'] = 0
yazacak nasıl bilmek istiyorum dict.setdefault
:
count.setdefault('a', 0)
yardım dict.setdefault
tarih:
>>> print dict.setdefault.__doc__
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
setdefault
en iyi yanıttır, ancak kayıt için,numaralı anahtardaki bir anahtarı denetlemenin Pythonic yolu
if 'a' not in count:
count['a'] = 0
Ne kasten ' 'a'' değeri olarak' None' koyarsanız:
in
anahtar kelime kullanıyor? –Bence Pythonic, sözlüklerdeki anahtarların değerlerini 'Yok' olarak ayarlamaktır. Çünkü eğer yaparsanız, o zaman gereksiz hatalara ve karışıklığa neden olabilecek '' (none) 'un get() 'inin dönüş değeriyle örtüşebilir. Değeri "0" ya da sıfır gibi olmayan, sıfır olmayan bir çeşit dummy sınıfına ayarlamak daha iyidir. – Shashank
Bunu açıklığa kavuşturmak için: ['a'] sayısı aslında "Yok" sayılırken veya ['a'] sayımı tanımlanmadığında durumu hesaba katmak ister misiniz? Ya da her ikisi de? –