Ist es sicher, ein veränderbares Objekt zu modifizieren, das von einer Methode eines Standardbibliotheksobjekts zurückgegeben wird?python: Wörterbuch ändern von groupdict() zurückgegeben
Hier ist ein spezifisches Beispiel; aber ich suche nach einer allgemeinen Antwort wenn möglich.
#m is a MatchObject
#I know there's only one named group in the regex
#I want to retrieve the name and the value
g, v = m.groupdict().popitem()
#do something else with m
Ist dieser Code sicher? Ich bin besorgt, dass ich mit groupdict() das Objekt m korrumpiere (was ich noch für später brauche).
Ich testete dies aus, und ein nachfolgender Aufruf von m.grouddict() gab immer noch das ursprüngliche Wörterbuch zurück; Aber ich weiß, dass dies von der Implementierung abhängig sein kann.
So verstehe ich richtig, dass die Antwort lautet: Nein, es ist kein Safe. Es gibt in der Python-Standardbibliothek kein Versprechen, dass das Ändern von m.groupdict() das MatchObject nicht beschädigt. – max