如何正确使用.replace()

时间:2019-04-20 02:47:55

标签: python-3.x

我正在尝试从单词中删除“-”。例如,单词“世界-四千”应替换为执行string.replace('-','')的空格

String.replace('-','')我已经尝试过并且不会将其删除。

if "--" in string:
        string.replace("--", " ")

预计“世界第四千世界” 实际的“世界-四千”

3 个答案:

答案 0 :(得分:1)

replace返回一个替换了子字符串的新字符串,它不会更改原始字符串。因此,您可以这样做:

string = string.replace("--"," ")

答案 1 :(得分:0)

replace()函数应返回替换了预期字符的字符串的副本。话虽如此,我相信您应该将replace函数的结果分配给另一个变量,该变量将保留所需的值。

if "--" in string:
    new_string = string.replace("--", " ")

答案 2 :(得分:0)

字符串就是所谓的不可变对象,这意味着每当修改它们时,您都会得到一个新对象,并且原始字符串是完整的,因此您需要将编辑后的字符串保存在新变量中,如下所示:

s = "World--fourthousand"
s = s.replace("--"," ")
print(s)
#World fourthousand

从文档中:https://docs.python.org/3/library/string.html#string.replace

  

返回字符串s的副本,并将所有出现的子字符串old替换为new。如果给出了可选参数maxreplace,则替换第一个出现的maxreplace。