最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

fooisNone和foo==None的区别

来源:动视网 责编:小采 时间:2020-11-27 14:09:43
文档

fooisNone和foo==None的区别

fooisNone和foo==None的区别:foo is None 和 foo == None的区别if foo is None: pass if foo == None: pass这是两种不同的用法,它们之间的区别是什么呢?解答:Python中变量本身不存储其值,变量赋值事实上是将变量引用指向内存中缓存的对象本身,比如:a=5b=5看似两个变量实际指
推荐度:
导读fooisNone和foo==None的区别:foo is None 和 foo == None的区别if foo is None: pass if foo == None: pass这是两种不同的用法,它们之间的区别是什么呢?解答:Python中变量本身不存储其值,变量赋值事实上是将变量引用指向内存中缓存的对象本身,比如:a=5b=5看似两个变量实际指
 foo is None 和 foo == None的区别

if foo is None: 
 pass
if foo == None: 
 pass

这是两种不同的用法,它们之间的区别是什么呢?

解答:

Python中变量本身不存储其值,变量赋值事实上是将变量引用指向内存中缓存的对象本身,比如:
a=5
b=5
看似两个变量实际指向同一个对象,此时a==b,a is b都为True,==操作符比较两个对象的值,is 则判断两个变量是否指向同一个引用,想判断是否同一对象,用函数id()即可显示出实际对象的标识(一个整数),此时id(a),id(b),id(5)的标识符都是一致的。
同理,如果foo为None时,事实上是将foo指向None对象的实际标识符,此时用id()显示任何为None的变量的标识,会发现与id(None)的结果相同。
题目中的结果一样,但语义不同,就看你是想表达“foo与None为同一对象”,还是“foo值与None值相等”

文档

fooisNone和foo==None的区别

fooisNone和foo==None的区别:foo is None 和 foo == None的区别if foo is None: pass if foo == None: pass这是两种不同的用法,它们之间的区别是什么呢?解答:Python中变量本身不存储其值,变量赋值事实上是将变量引用指向内存中缓存的对象本身,比如:a=5b=5看似两个变量实际指
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top