Python中的内存分配

以下是我的调试代码:

a = 10086
print('a = ' + str(a))
print('A ID is = ' + str(id(a)))

a ,c = 10010 ,10000
print('a = ' + str(a))
print('A ID is = ' + str(id(a)))
print('c = ' + str(c))
print('C ID is = ' + str(id(c)))

a = c = b = 10010
print('a = ' + str(a))
print('A ID is = ' + str(id(a)))
print('b = ' + str(b))
print('B ID is = ' + str(id(b)))
print('c = ' + str(c))
print('C ID is = ' + str(id(c)))

我在测试a,b,c的内存地址时,发现a ,b , c 赋予通一个值时,他们所对应的地址也是相同的,这一点跟其他的编程语言是不同的。比如说C语言,它会分配三个变量,分别对应不同的内存地址,尽管指向的值都是相同的。下面我来画一个内存示意图:

Python中的内存分配_第1张图片

你可能感兴趣的:(Python)