我已经阅读了String.replace
上的所有python文档,但是我的代码仍然遇到问题。我的代码如下:
#within a class
def fixdata(self):
global inputs_list
for i in range(0, len(inputs_list)):
inputs_list[i].replace("\n", "")
print(inputs_list[i]) # to check output
我希望将所有\n
个字符(换行符)替换为空字符串""
,以便删除尾随的换行符。 .strip()
,.rstrip()
,并且我假设.lstrip()
不起作用。
答案 0 :(得分:1)
Dok:string.replace()
返回字符串的副本,并将所有出现的子字符串old替换为new。如果给出了可选参数maxreplace,则替换第一个出现的maxreplace。
您替换并扔掉副本:
#within a class def fixdata(self): global inputs_list for i in range(0, len(inputs_list)): inputs_list[i].replace("\n", "") # Thrown away print(inputs_list[i]) # to check output
更多doku:
修复:
def fixdata(self):
global inputs_list # a global in a class-method? pass it to the class and use a member?
inputs_list = [item.rstrip() for item in input_lists]
答案 1 :(得分:0)
您需要像这样分配新的字符串:
inputs_list[i] = inputs_list[i].replace("\n", "")