Im folgenden Python-Skript, warum die zweite Assert durchläuft (d. H., Wenn 0 bis 257 hinzufügen und speichert das Ergebnis in y, dann x und y werden verschiedene Objekte)? Vielen Dank!Integer-Python-Caching
x = 257
y = 257
assert x is y
x = 257
y = 257 + 0
assert x is not y
nicht '' 'auf Gleichheit zu prüfen ... im Grunde immer ... es ist buchstäblich die Speicherposition Variable ... Python Prestres eine kleine Anzahl von Konstanten, die ju sein werden st zufällig in einigen Fällen zu arbeiten ... –
Überprüfen Sie diese Antwort aus; es erklärt, warum "ist" scheint manchmal seltsam zu arbeiten! http://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is-in-python –