Perché l'elenco non ha un metodo "get" sicuro come il dizionario?
>>> d = {'a':'b'}
>>> d['a']
'b'
>>> d['c']
KeyError: 'c'
>>> d.get('c', 'fail')
'fail'
>>> l = [1]
>>> l[10]
IndexError: list index out of range
l[10:11]
anziché l[10]
, ad esempio. () L'elenco secondario avrà l'elemento desiderato se esiste)
.get
. Sarebbe l'equivalente di l[i] if i < len(l) else default
, ma più leggibile, più conciso e consentendo i
di essere un'espressione senza dover ricalcolarla
None
se uno non esistesse. Sarebbe stato bello dirlo, x = expensive().get(0, None)
quindi non avrei dovuto mettere l'inutile ritorno del costoso in una variabile temporanea.