傻眼貓咪 发表于 2021-11-7 11:27:34

Robot_Steve 发表于 2021-11-7 11:24
谢谢了,结果更离谱了...
在Shell里运行和运行文件的结果完全相反

共同学习{:5_109:}

Robot_Steve 发表于 2021-11-7 11:30:35

傻眼貓咪 发表于 2021-11-7 11:21
你可以试试先将代码储存为 py,再试试用 Python IDLE 打开执行 run 看看,你就明白我说的

好吧好吧,两种跑代码的方式不一样,导致了错误
实际上底层还是指向一个地址...
(表示对python这种机制的鄙夷)

Robot_Steve 发表于 2021-11-7 11:42:15

Robot_Steve 发表于 2021-11-7 11:30
好吧好吧,两种跑代码的方式不一样,导致了错误
实际上底层还是指向一个地址...
(表示对python这种机制 ...

还是自己写语言用着香

kogawananari 发表于 2021-11-7 13:54:47

Robot_Steve 发表于 2021-11-7 11:30
好吧好吧,两种跑代码的方式不一样,导致了错误
实际上底层还是指向一个地址...
(表示对python这种机制 ...

python有包装对象机制即字面量会被包装为实例

hash一样__eq__就是True
id一样is就是True

单是hash一样 id不一定一样特别是不是包装对象的{:10_293:}

Robot_Steve 发表于 2021-11-7 15:40:58

kogawananari 发表于 2021-11-7 13:54
python有包装对象机制即字面量会被包装为实例

hash一样__eq__就是True


我觉得Python有偷懒嫌疑(doge

Python初学者8号 发表于 2021-11-7 20:35:25

hrpzcf 发表于 2021-11-6 19:34
第二个为什么要相同?两个不同的实例,id肯定不相同(除了一些Python优化过的实例)

我有点学混淆了{:10_266:}

Python初学者8号 发表于 2021-11-7 20:36:21

傻眼貓咪 发表于 2021-11-6 19:46
id() 用于获取对象的内存地址,明显 a 和 b 不同内存地址(只是值相同而已)

我感觉两个是一个id 啊   {:10_266:}

Python初学者8号 发表于 2021-11-7 20:37:57

傻眼貓咪 发表于 2021-11-7 10:06
错,答案是不会,a 和 b 储存在同样地址,如:输出结果:以上两者 id 相同,用 Python is 判断符 来判断 ...

我草 还有这养的   {:10_266:}

Python初学者8号 发表于 2021-11-7 20:38:34

傻眼貓咪 发表于 2021-11-7 11:18
你这是在 Python IDLE 上执行(也就是 tkinterGUI 为基础)其内存位置不一样吧?

我突然想到ide好像和运行脚本不一样哦

Python初学者8号 发表于 2021-11-7 20:39:13

suchocolate 发表于 2021-11-6 19:51
我的钱包里有100元,我朋友钱包也有100,所以朋友的钱就是我的钱,成功解锁财富密码。

你说的太容易 懂了,牛逼!!!!!!!!!{:10_254:}

Python初学者8号 发表于 2021-11-7 20:39:51

Robot_Steve 发表于 2021-11-7 09:12
因为在Python的内部,a和b是两个完全不同的变量,值相等并不意味着id相等

详细讲解:


所以就像三楼说的那样,我们都有100块,但是100块是两个人的{:10_258:}

Robot_Steve 发表于 2021-11-10 21:48:49

Python初学者8号 发表于 2021-11-7 20:39
所以就像三楼说的那样,我们都有100块,但是100块是两个人的

hhhh 有个性的比喻{:10_256:}9

Python初学者8号 发表于 2021-11-12 10:52:11

Robot_Steve 发表于 2021-11-10 21:48
hhhh 有个性的比喻9

惊现黑洞本洞

Robot_Steve 发表于 2021-11-20 14:58:57

Python初学者8号 发表于 2021-11-12 10:52
惊现黑洞本洞

头像不知道用啥,就选用了个黑洞
页: 1 [2]
查看完整版本: id居然不等!!!!》》》