一个就是性能:知道字符串是不可变的,因此很容易在构造时进行布局- 固定且不变的存储要求。这也是区分元组和列表的原因之一。这也允许实现安全地重用字符串对象。例如,cpython实现将预分配的对象用于单字符字符串,并且通常返回原始字符串用于不更改内容的字符串操作。
另一个是Python中的字符串被视为数字的“元素”。活动量不会将值8更改为其他任何值,在Python中,活动量也不会将字符串“八”更改为其他任何值。
http://effbot.org/pyfaq/why-are-python-strings- immutable.htm