Python 2 legt den Typ automatisch basierend auf der Größe des Werts fest. Eine Anleitung mit Maximalwerten finden Sie unten.
Der Maximalwert des Standard-Int in Python 2 ist 65535, alles, was darüber liegt, ist lang
Beispielsweise:
>> print type(65535)
<type 'int'>
>>> print type(65536*65536)
<type 'long'>
In Python 3 wurde der lange Datentyp entfernt und alle ganzzahligen Werte werden von der Int-Klasse behandelt. Die Standardgröße von Int hängt von Ihrer CPU-Architektur ab.
Beispielsweise:
- 32-Bit-Systeme Der Standarddatentyp für Ganzzahlen ist "Int32".
- 64-Bit-Systeme Der Standarddatentyp für Ganzzahlen ist "Int64".
Die Min / Max-Werte der einzelnen Typen finden Sie unten:
- Int8: [-128,127]
- Int16: [-32768,32767]
- Int32: [-2147483648,2147483647]
- Int64: [-9223372036854775808,9223372036854775807]
- Int128: [-170141183460469231731687303715884105728,170141183460469231731687303715884105727]
- UInt8: [0,255]
- UInt16: [0,65535]
- UInt32: [0,4294967295]
- UInt64: [0,18446744073709551615]
- UInt128: [0,340282366920938463463374607431768211455]
Wenn die Größe Ihres Int die oben genannten Grenzwerte überschreitet, ändert Python automatisch seinen Typ und weist mehr Speicher zu, um diese Erhöhung der Min / Max-Werte zu bewältigen. Wo es in Python 2 in 'long' konvertiert wird, wird es jetzt nur noch in die nächste Größe von Int konvertiert.
Beispiel: Wenn Sie ein 32-Bit-Betriebssystem verwenden, beträgt Ihr Maximalwert für ein Int standardmäßig 2147483647. Wenn ein Wert von 2147483648 oder höher zugewiesen wird, wird der Typ in Int64 geändert.
Es gibt verschiedene Möglichkeiten, die Größe des int und seine Speicherzuordnung zu überprüfen. Hinweis: In Python 3 gibt die Verwendung der integrierten type () -Methode immer zurück, <class 'int'>
unabhängig von der Größe, die Sie verwenden.