Kelas collections.defaultdictmengambil pabrik default, yang digunakan untuk menghasilkan nilai default.
Jika nilai-nilai yang terkandung dalam objek- dictlike seharusnya default False, instance dapat dibuat sebagai:
d_false = defaultdict(bool)
Apa cara paling pythonic untuk mencapai hal yang sama untuk nilai default True?
Dengan kata lain, apakah ada objek callable standar Trueyang kembali yang secara idiomatis digunakan sebagai kerabat bool?
Tentu saja, pabrik dapat dibangun sebagai ungkapan lambda:
d_true = defaultdict(lambda: True)
tapi ini mungkin menciptakan kembali kemudi.
int() == 0, list() == [], str() == '', dll Jadi saya tidak berpikir ada cara standar untuk melakukan hal ini.
lambda: valuekonstruk adalah cara idiomatik Pythonic untuk membangun dict dengan nilai default statis; Saya tahu tidak ada cara sederhana untuk mendapatkan fungsi kembali True.
object()benar - tidak yakin apakah itu berguna
lambda: Truetidak apa-apa asalkan Anda tidak perlu acar defaultdict itu.