大家好我知道这段代码的作用:
1.]我的第一个问题
x = 4
y = x
Run Code Online (Sandbox Code Playgroud)
但是这个呢.为什么同样的地址甚至是这种情况?
x = 4
y = 4
id(x)
12345678
id(y)
12345678
Run Code Online (Sandbox Code Playgroud)
2.]我的第二个问题
x = 42
y = x
x = x + 1
print x # Prints 43
print y # Prints 42
x = [1, 2, 3]
y = x
x[0] = 4
print x # Prints [4, 2, 3]
print y # Prints [4, 2, 3]
Run Code Online (Sandbox Code Playgroud)
但为什么在名单的情况,都x与y得到了由命令突变在一起x[0] = 4.
在这样的行为中,列表有什么不同?
是什么让他们表现得像这样?
最重要的是,这种行为的好处是什么?
为什么不能列出,变量,元组具有彼此的所有属性?
整数示例:
>>> x = 100
>>> y = x
>>> id(x),id(y)
(165193204, 165193204)
>>> x += 1
>>> id(x), id(y) #`x` now points to a new object, `y` still points to the old object
(165193192, 165193204)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
109 次 |
| 最近记录: |