导语:
本文主要介绍了关于python is和==的区别有哪些的相关知识,包括cookie和session区别,以及python中round的用法这些编程知识,希望对大家有参考作用。
is 与 == 区别:
is用来判断两个变量引用对象是否相同,==用来判断引用变量的值是否相等。
a is b 相当于 id(a)==id(b),id() 能够获取对象的内存地址。
如果 a=10;b=a; 则此时 a 和 b 的内存地址一样的;
但当 a=[1,2,3]; 另 b=a[:] 时,虽然 a 和 b 的值一样,但内存地址不一样。
如果此时定义a=10,b=10,然后比较a是b,你会发现返回的结果是True,这是因为在Python中会创建一个小的整形池,范围为[-5,256 ],为这些整形开辟了一个很好的内存空间,当代码中定义了这个范围内的整形时,不会重新分配内存地址。我在 Pycharm 中测试:
#coding=utf-8
a=100000000000;
b=100000000000;
print a is b
结果:
True
在 Python 中出于性能考虑,所有不可变对象,同一代码块中的对象,只有具有相同值的对象,不会重复创建,而是直接引用现有对象。
python学习网,大量的免费
,欢迎在线学习!
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在mysql中建立数据库10/16
- ♥ 如何解决python的导入错误10/06
- ♥ python K-NN算法优缺点12/06
- ♥ python如何实现均方误差和均方根误差?09/12
- ♥ 如何在python中创建一个新表09/09
- ♥ python中栈是什么意思12/09
内容反馈