python中的 == 和 is 的区别
== 比较的是两边的值
is 比较的是两边的内存地址 通过 id()获取内存地址
小数据池:我们使用过的值存储在小数据池中,供其他数据使用.
小数据池仅限于 数字 和 字符串:
数字的小数池范围 -5---256
字符串中 1.不能有空格;
2. 长度不能超过20个字符;
3. 不能有特殊字符 如:@#$
1. id() 获得内存地址
a = 'alex'
print(id(a)) # 36942544 内存地址
2. == 比较两边的值
a = 'alex'
b = 'alex'
print(a == b) #True n = 10
n1 = 10
print(n == n1) #True li1 = [1,2,3]
li2 = [1,2,3]
print(li1 == li2) #True
3. is 比较的是内存地址
3.1 列表 字典 元组 集合
#列表
li =[1,2,3]
li2 =[1,2,3]
print(li is li2) #False #元组
tu =(1,2,3)
tu1 =(1,2,3)
print(tu is tu1) # False #字典
dic1 = {'name':'alex'}
dic = {'name':'alex'}
print(dic1 is dic) #False
对比一下上面的 is #列表
li =[1,2,3]
li2 =[1,2,3]
print(li == li2) #True #元组
tu =(1,2,3)
tu1 =(1,2,3)
print(tu == tu1) # True #字典
dic1 = {'name':'alex'}
dic = {'name':'alex'}
print(dic1 == dic) #True
3.2 对于str 小数据池
字符串中 1.不能有空格;
2. 长度不能超过20个字符;
3. 不能有特殊字符 如:@#$
a = 'alex@'
a1 = 'alex@'
print(a is a1) # Fales a = 'a'*21
b = 'a'*21
print(a is b) #False a = "ab "
b = "ab "
print(a is b) #False 但是在pycharm中的结果为True
3.3 对于int 小数据池
数字的小数池范围 -5---256
n = -6
n1 = -6 #超出了范围
print(n is n1) #False n = -5
n1 = -5
print(n is n1) #True
n = 257
n1 = 257
print(n is n1) #cmd中为False 在pycharm中显示为True
python中的 == 和 is 的区别的更多相关文章
- Python中type与Object的区别
Python中type与Object的区别 在查看了Python的API后,总算明白了.现在总结如下: 先来看object的说明: Python中关于object的说明很少,甚至只有一句话: clas ...
- Python中生成器和迭代器的区别(代码在Python3.5下测试):
https://blog.csdn.net/u014745194/article/details/70176117 Python中生成器和迭代器的区别(代码在Python3.5下测试):Num01–& ...
- Python中的is和==的区别,==判断值是否相等,is判断地址是否一致
Python中的is和==的区别 Python中的对象包含三要素:id.type.value. 其中id用来唯一标示一个对象,type标识对象的类型,value是对象的值. is判断的是a对象是否就是 ...
- 基于python中staticmethod和classmethod的区别(详解)
例子 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 class A(object): def foo(self,x): print "executing foo ...
- Python中send()和sendall()的区别
Python中send()和sendall()的区别 估计每个学习Python网络编程的人,都会遇到过这样的问题: send()和sendall()到底有什么区别? send()和sendall()原 ...
- Python中的is和==的区别
Python中的is和==的区别 1. is 是比较内存地址id() a = "YongJie" b = "YongJie" print(id(a)) #233 ...
- python中_new_()与_init_()的区别
__new__方法的使用 只有继承于object的新式类才能有__new__方法,__new__方法在创建类实例对象时由Python解释器自动调用,一般不用自己定义,Python默认调用该类的直接父类 ...
- python中break和continue的区别
python中break和continue的区别 break和continue 1.break 意思为结束循环 例: i = 0 while i<10: i+=1 if ...
- 从python中copy与deepcopy的区别看python引用
讨论copy与deepcopy的区别这个问题要先搞清楚python中的引用.python的内存管理. python中的一切事物皆为对象,并且规定参数的传递都是对象的引用.可能这样说听起来比较难懂,对比 ...
- python中input()和raw_input()的区别
两者均是python的内置函数,通过读取控制台的输入与用户实现交互.raw_input:将所有输入作为字符串看待,不管用户输入什么类型的都会转变成字符串. raw的 ...
随机推荐
- 【msdn wpf forum翻译】TextBox中文本 中对齐 的方法
原文:[msdn wpf forum翻译]TextBox中文本 中对齐 的方法 原文链接:http://social.msdn.microsoft.com/Forums/en-US/wpf/threa ...
- Mvvm Light Toolkit 入门
原文:Mvvm Light Toolkit 入门 前言 之前学习UWP的时候就一直看到有关MVVM的资料但是一直没有系统的去学,最近正好有时间,特地来攻破这个点,顺便学习一下VS与GitHub的链接和 ...
- telerik ChartGrid浅谈
在最近接触的项目中,有很多都是以Chart图表的方式呈现出来的,关于telerik Chart的使用,有几个小点跟大家分享一下. 1:本例子使用的Chart的命名空间为 xmlns:telerik=h ...
- WPF 控件 深度克隆
原文:WPF 控件 深度克隆 http://social.msdn.microsoft.com/Forums/zh-SG/wpfzhchs/thread/e5c87129-966a-4d51-a934 ...
- Win8Metro(C#)数字图像处理--2.34直方图规定化
原文:Win8Metro(C#)数字图像处理--2.34直方图规定化 [函数名称] WriteableBitmap HistogramSpecificateProcess(WriteableBi ...
- 一个技术人,最重要的是:极客精神(好奇心 + 探索欲)(新de代码)
一个技术人,最重要的是:极客精神(好奇心 + 探索欲) 初到社会,面对众多的IT企业,我们是陌生与好奇的,认为所有企业都是管理一流并且高大上等的.然而工作多年以后你会发现,国内的IT企业环境良莠不齐, ...
- webform的图片防盗链
最近用到域的问题,不是同一主机的请求将不允许请求此页面. 这其实和图片防盗链的本质是一样的. 通过两个属性:由于当时用的aspx视图引擎,所以需要通过HttpContext.Current才能拿到ht ...
- 变量的选择——Lasso&Ridge&ElasticNet
对模型参数进行限制或者规范化能将一些参数朝着0收缩(shrink).使用收缩的方法的效果提升是相当好的,岭回归(ridge regression,后续以ridge代称),lasso和弹性网络(elas ...
- [机器学习]Generalized Linear Model
最近一直在回顾linear regression model和logistic regression model,但对其中的一些问题都很疑惑不解,知道我看到广义线性模型即Generalized Lin ...
- asp.net core 系列之Response caching 之 Distributed caching(3)
这篇文章讲解分布式缓存,即 Distributed caching in ASP.NET Core Distributed caching in ASP.NET Core 分布式缓存是可以在多个应用服 ...