定义变量的三个特征

  1. id:print(id(x))
  2. 类型:print(type(x))
  3. 值:print(x)

判断值是否相等用==

name1= 'egon'
name2= 'nick'
print(name1==name2)

判断id是否相等:is判断id是否相等,

x=11
y=x
print(x == y)
print(x is y)

id相等,值一定相等,指向的都是一个内存地址;值相等,id不一定相等,

如果x=10000;y=10000则会定义两个变量,即定义两个内存空间。但是如果x=10,y=10

python的内置功能id(),内存地址不一样,则id不一样,每一个变量值都有其内存地址,而id是用来反映变量值在内存中的位置,内存地址不同id则不同。x=info:<name:nick age:18>;y=info:<name:nick age:18>',x和y的内存空间地址相同。交互式环境下id是不一样的,也就是说值一样,但是他们的内存空间是不同的。这就是python的优化机制,10的值本身不大,并且快速的使用了10,由于申请内存空间需要计算机开销,因此python让x和y都指向同一个10,存不是目的,取才是目的,这样的话并不会影响python的使用。

猜你喜欢

转载自www.cnblogs.com/nickchen121/p/10731697.html