方法返回一个字符串......但为什么呢?

时间:2013-06-14 23:01:57

标签: python object

我只是想要掌握Python,所以我试图掌握“经验法则”,这样我才能理解这些点点滴滴是如何协同工作的。

所以对于这段代码:

string = "Hello World"
string.replace ("World", "Mars")
print string (which would equal "Hello World")

我知道它不会更改数据对象,为了做到这一点,您需要分配一个变量。

hello = string.replace("World", "Mars")
print hello

我更想知道返回字符串是否只是典型的方法。或者这里有一些更重要的基本规则。因为当我考虑一个函数时,你不能在那里更改数据对象,除非你为它赋一个变量。这是Python中的一般经验法则吗?你不能在不做的情况下改变对象:

object = altering code

我希望这一切都有意义吗?

1 个答案:

答案 0 :(得分:10)

Python中的字符串是不可变的 - 它们不能被更改。从这个意义上说,Python字符串很像数字。必须使用字符串操作运算符/方法的结果

现在, mutable 对象被设计为更改:列表和字典是可变对象 - 大多数(所有标准?)副作用方法返回None(表明它是< em>变异很重要。)