Home > Backend Development > Python Tutorial > Understand where integer objects are stored in Python

Understand where integer objects are stored in Python

高洛峰
Release: 2016-10-17 16:35:21
Original
1357 people have browsed it

The storage locations of integer objects in Python are different. Some are pre-allocated memory and are always stored in memory, while others open up space when used.

The reason for saying this, You can take a look at the following code:

a = 5
b = 5
a is b # True
a = 500
b = 500
a is b # False
Copy after login

As can be seen from the above code, the integer type 5 always exists, but the integer type 500 does not always exist.

So which integers have pre-allocated memory addresses?

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
Copy after login

As we know from the above, non-negative integers less than or equal to 256 (2**8) are always stored (that is to say, their memory addresses are allocated in advance and do not need to be allocated later)

a = -1
b = -1
a is b # False
Copy after login

And negative numbers will not be opened in advance.


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template