首页 > 解决方案 > 避免两次使用相同的功能

问题描述

我有两个命令的两个输出(内容无关紧要,问题是我必须替换两个相同的字符):

string1 =  str(newstring1).replace("\\r", "").replace("  ", "").replace("\\", "").replace("' ", "").replace("\n", ", ").replace("MB ", "MB").replace("MB", "MB ")
string2 = str(newstring2).replace("\\r", "").replace("  ", "").replace("\\", "").replace("' ", "").replace("\n", ", ").replace("MB ", "MB").replace("MB", "MB ")

那行得通,但我的问题是,有没有办法只做一次这些“替换”?而不是这样做两次。

我尝试创建一个变量,.replace("\\r", "\n").replace("[", "").replace("'", "").replace(" ", "").replace(",", "").replace("]", "").replace("\n ", "\n").rstrip().lstrip().replace("MB ", "MB").replace("MB", "MB ")但它不起作用。

标签: pythonreplace

解决方案


编写一个自定义函数并为所有字符串调用它。

def replace_all(s):
    return s.replace("\\r", "").replace("  ", "").replace("\\", "").replace("' ", "").replace("\n", ", ").replace("MB ", "MB").replace("MB", "MB ")

string1 = replace_all(newstring1)
string2 = replace_all(newstring2)

推荐阅读