找回密码
 立即注册
CeraNetworksBGVM服务器主机交流IP归属甄别会员请立即修改密码
查看: 61|回复: 7

python大佬 求助

[复制链接]

45

主题

253

回帖

1168

积分

金牌会员

积分
1168
发表于 2018-8-27 09:18:04 | 显示全部楼层 |阅读模式
最近在学习python///

        刚看到运算符。  是关于一个函数  id()
        
         下面附图
   



  

id(a) is id(b)

为什么结果是false。。内存地址明明是一样的
回复

使用道具 举报

45

主题

253

回帖

1168

积分

金牌会员

积分
1168
 楼主| 发表于 2018-8-27 09:35:28 | 显示全部楼层

成都第七帅 发表于 2018-8-27 09:33

is比较是的变量的id
你这句代码:Id(a) is Id(b)相当于  Id(Id(a)) == Id(Id(b))

大佬 一语惊醒梦中人。。感谢
回复

使用道具 举报

0

主题

18

回帖

38

积分

新手上路

积分
38
发表于 2018-8-27 09:33:00 | 显示全部楼层
https://docs.python.org/3.7/reference/expressions.html#is

id(a)的处理结果和id(b)的处理结果并不是同一个。
你可以试 id(a) is id(a)
回复

使用道具 举报

6

主题

158

回帖

460

积分

中级会员

积分
460
发表于 2018-8-27 09:23:40 | 显示全部楼层
明明是两个变量,怎么就一样了
回复

使用道具 举报

45

主题

253

回帖

1168

积分

金牌会员

积分
1168
 楼主| 发表于 2018-8-27 09:31:08 | 显示全部楼层

Nya 发表于 2018-8-27 09:23

https://docs.python.org/3.7/reference/expressions.html#is

id(a)的处理结果和id(b)的处理结果并不是同 ...

试了下,,确实 id(a) is id(a) 结果也是false。脑壳痛,正在搜索资料
回复

使用道具 举报

46

主题

278

回帖

1182

积分

金牌会员

积分
1182
发表于 2018-8-27 09:33:01 | 显示全部楼层
is比较是的变量的id
你这句代码:Id(a) is Id(b)相当于  Id(Id(a)) == Id(Id(b))
回复

使用道具 举报

0

主题

18

回帖

38

积分

新手上路

积分
38
发表于 2018-8-27 09:23:00 | 显示全部楼层

wki2012 发表于 2018-8-27 09:33

试了下,,确实 id(a) is id(a) 结果也是false。脑壳痛,正在搜索资料

你实际算的是 Object(id(a)) is Object(id(b)), 每次查询id返回的Object都不一样。id(a) is id(b)就不是正确用法。你应该用 id(a) == id(b).
回复

使用道具 举报

45

主题

253

回帖

1168

积分

金牌会员

积分
1168
 楼主| 发表于 2018-8-27 09:33:08 | 显示全部楼层

Nya 发表于 2018-8-27 09:41

你实际算的是 Object(id(a)) is Object(id(b)), 每次查询id返回的Object都不一样。id(a) is id(b)就不是 ...

发现了。。。感谢提醒
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|HS2V主机综合交流论坛

GMT+8, 2024-5-13 18:42 , Processed in 0.141462 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表