如何从字符串中的每一行中删除最后一个逗号?
How to remove the last comma from each line in a string?
我有一个名为 output
的变量,用于存储此字符串:
Numbers: 1, 2, 3, 4,
Numbers1: 1, 3, 5, 7,
Numbers2: 2, 4, 5, 7,
如何只删除每行最后一个逗号?
结果应如下所示:
Numbers: 1, 2, 3, 4
Numbers1: 1, 3, 5, 7
Numbers2: 2, 4, 5, 7
output.rstrip(',')
只去除 Numbers2 中的最后一个逗号,如下所示:
Numbers: 1, 2, 3, 4,
Numbers1: 1, 3, 5, 7,
Numbers2: 2, 4, 5, 7
output[:-1]
结果相同,只去掉最后一行
如果你有混合结尾,你可能可以组合多个 rstrip,但最好的答案是使用正则表达式。
import re
output = "1,2,3,4 \t\n"
print(re.sub(",\s*$", "", output))
产出
1,2,3,4
如果你的字符串很长,这在性能方面不太好,但它应该可以
"\n".join(x[:-1] for x in output.splitlines())
s = "1, 2, 3, 4,"
s1=s[:-1] # it returns all characters except the last (-1 counting from the end).
In : s1
Out: '1, 2, 3, 4'
您可以使用正则表达式删除每条中线的逗号和最后一条的子字符串。
import re
string = """Numbers: 1, 2, 3, 4,
Numbers1: 1, 3, 5, 7,
Numbers2: 2, 4, 5, 7,"""
final = re.sub(r',[\s]+N', '\nN', string)[:-1]
print(final)
输出
Numbers: 1, 2, 3, 4
Numbers1: 1, 3, 5, 7
Numbers2: 2, 4, 5, 7
我有一个名为 output
的变量,用于存储此字符串:
Numbers: 1, 2, 3, 4,
Numbers1: 1, 3, 5, 7,
Numbers2: 2, 4, 5, 7,
如何只删除每行最后一个逗号? 结果应如下所示:
Numbers: 1, 2, 3, 4
Numbers1: 1, 3, 5, 7
Numbers2: 2, 4, 5, 7
output.rstrip(',')
只去除 Numbers2 中的最后一个逗号,如下所示:
Numbers: 1, 2, 3, 4,
Numbers1: 1, 3, 5, 7,
Numbers2: 2, 4, 5, 7
output[:-1]
结果相同,只去掉最后一行
如果你有混合结尾,你可能可以组合多个 rstrip,但最好的答案是使用正则表达式。
import re
output = "1,2,3,4 \t\n"
print(re.sub(",\s*$", "", output))
产出
1,2,3,4
如果你的字符串很长,这在性能方面不太好,但它应该可以
"\n".join(x[:-1] for x in output.splitlines())
s = "1, 2, 3, 4,"
s1=s[:-1] # it returns all characters except the last (-1 counting from the end).
In : s1
Out: '1, 2, 3, 4'
您可以使用正则表达式删除每条中线的逗号和最后一条的子字符串。
import re
string = """Numbers: 1, 2, 3, 4,
Numbers1: 1, 3, 5, 7,
Numbers2: 2, 4, 5, 7,"""
final = re.sub(r',[\s]+N', '\nN', string)[:-1]
print(final)
输出
Numbers: 1, 2, 3, 4
Numbers1: 1, 3, 5, 7
Numbers2: 2, 4, 5, 7