你好.我有一个关于Python何时以及何时使用引用的工作方式的问题.
我在这里有一个例子,我理解.
a = "cat"
b = a
a is b
True
Run Code Online (Sandbox Code Playgroud)
这是有道理的.但这里有一些我不明白的东西.
a = "cat"
b = "cat"
a is b
True
c = 1.2
d = 1.2
c is d
False
e = "cat"
f = "".join(a)
e is f
False
Run Code Online (Sandbox Code Playgroud)
为什么a是b返回True而不是c是d?这两种类型都是不变的吗?它在使用浮点数时起作用我只能想象它是某种优化,但我很高兴得到任何答案.
我也尝试了其他一些东西并得到了这个结果:
a = "cat"
b = "c"
c = b+"at"
a is c
False # Why not same as setting c = "cat"
d = "cat"+""
a is d …Run Code Online (Sandbox Code Playgroud)