如何删除字符串末尾的/n
换行符?
我正在尝试从.txt
文件中读取两个字符串,并希望在我“清除”字符串后使用os.path.join()
方法对其进行格式化。
在这里你可以看到我尝试使用虚拟数据:
content = ['Source=C:\\Users\\app\n', 'Target=C:\\Apache24\\htdocs']
for string in content:
print(string)
if string.endswith('\\\n'):
string = string[0:-2]
print(content)
答案 0 :(得分:4)
您无法像尝试那样更新字符串。 Python字符串是不可变的。每次更改字符串时,都会创建新实例。但是,您的列表仍然引用旧对象。因此,您可以创建一个新列表来保存更新的字符串。要删除换行符,您可以使用rstrip
函数。看看下面的代码,
content = ['Source=C:\\Users\\app\n', 'Target=C:\\Apache24\\htdocs']
updated = []
for string in content:
print(string)
updated.append(string.rstrip())
print(updated)
答案 1 :(得分:3)
您可以使用rstrip
功能。它可以修剪任何空的'字符串中包含\n
的字符串,如下所示:
>>> a = "aaa\n"
>>> print a
aaa
>>> a.rstrip()
'aaa'
答案 2 :(得分:0)
执行string[0:-2]
时,实际上是从结尾删除了2个字符,而\n
是一个字符。
尝试:
content = map(lambda x: x.strip(), content)
答案 3 :(得分:0)
要仅删除\n
,请使用此选项:
string = string.rstrip('\n')