7
C'è un tavolo o un grafico da qualche parte online che mostra quali tipi (integrati) sono mutevoli e immutabili in python?Grafico di tipi mutabili o immutabili
C'è un tavolo o un grafico da qualche parte online che mostra quali tipi (integrati) sono mutevoli e immutabili in python?Grafico di tipi mutabili o immutabili
non sono sicuro di un grafico, ma in fondo:
Mutevole:
list
, dictionary
, bytearray
Nota: bytearray
non è una sequenza però.
Immutabile:
tuple
, str
È possibile verificare la presenza di mutevolezza con:
>>> import collections
>>> l = range(10)
>>> s = "Hello World"
>>> isinstance(l, collections.MutableSequence)
True
>>> isinstance(s, collections.MutableSequence)
False
Per un dizionario (mappatura):
>>> isinstance({}, collections.MutableMapping)
True
Questo controlla se si tratta di una sequenza mutabile - no se si tratta di un oggetto mutevole. I dicts sono oggetti chiaramente mutabili, ma 'isinstance ({}, collections.MutableSequence)' è falso. –
Sì, per dicts, viene utilizzato 'MutableMapping'. Non ho menzionato perché ho preso l'esempio della lista. Lo aggiornerò. – user225312
Questo non funziona per i set. Il mio punto è che "collezioni" non ti dirà in modo generico se un oggetto è mutevole o immutabile. –