python 3.4.1替换字符串的一部分

时间:2014-12-19 11:19:59

标签: python string python-3.x

我发现了.replace(),但它在2.7.8中工作,但我需要它(或类似的东西),在3.4.1中工作。所以我有......

message = ("hello")
message.replace("l", "t")

我希望得到......

message = hetto

我知道当它变为hetto时没有任何意义,但它就是一个例子。

我试过了:

 message = ("l")
 message.replace("l", "i")

我仍然得到:

message = l

2 个答案:

答案 0 :(得分:9)

您必须将其分配回自身才能更改原始字符串:

>>> message = message.replace("l", "t")
>>> message
'hetto'

字符串在Python中是不可变的。更改字符串的唯一方法是创建一个新字符串。

答案 1 :(得分:0)

replace()是类str

的方法
>>> 'hello'.replace('l', 't')
'hetto'

发布修改

replace函数不是就地并返回更改后的字符串。所以你必须重新分配返回的值

message = "hello"
message = message.replace('l','t')
print(message)

将打印

hetto

另请参阅此document

作为评论中提到的holdenwebreplace()方法在Python 2和Python 3中的工作方式相同。