Python字符串不是一成不变的吗?那么为什么a +“” + b有效呢?

发布于 2021-02-02 23:11:36

我的理解是Python字符串是不可变的。

我尝试了以下代码:

a = "Dog"
b = "eats"
c = "treats"

print a, b, c
# Dog eats treats

print a + " " + b + " " + c
# Dog eats treats

print a
# Dog

a = a + " " + b + " " + c
print a
# Dog eats treats
# !!!

Python是否应该阻止分配?我可能错过了一些东西。

任何想法?

关注者
0
被浏览
62
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    首先a指向字符串“ Dog”。然后,你将变量更改a为指向新的字符串“ Dog eats对待”。你实际上并未更改字符串“ Dog”。字符串是不可变的,变量可以指向它们想要的任何东西。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看