Heim > Backend-Entwicklung > Python-Tutorial > Wo Integer-Objekte in Python gespeichert werden

Wo Integer-Objekte in Python gespeichert werden

高洛峰
Freigeben: 2016-10-17 11:53:06
Original
1349 Leute haben es durchsucht

Die Speicherorte von Ganzzahlobjekten in Python sind unterschiedlich. Einige sind vorab zugewiesener Speicher und werden immer im Speicher gespeichert, während andere bei Verwendung Speicherplatz freigeben.


Den Grund dafür können Sie dem folgenden Code entnehmen:

a = 5
b = 5
a is b # True
a = 500
b = 500
a is b # False
Nach dem Login kopieren

Aus dem obigen Code können wir ersehen, dass der Ganzzahltyp 5 immer existiert, der Ganzzahltyp 500 jedoch nicht immer existiert.


Welche Ganzzahlen haben also vorab zugewiesene Speicheradressen?

a, b, c = 0, 0, 0
i = 0
while a is b:
    i += 1
    a, b = int(str(i)), int(str(i))
else:
    print(i) # 打印 257
Nach dem Login kopieren

Wie wir aus dem oben Gesagten wissen, ist es kleiner oder gleich 256 ( 2 **8) Nicht negative ganze Zahlen werden immer gespeichert (dh ihre Speicheradressen werden im Voraus zugewiesen und müssen später nicht zugewiesen werden)

a = -1
b = -1
a is b # False
Nach dem Login kopieren

Und negative Zahlen sind es nicht vorbelegt Öffnen.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage