【发布时间】:2019-06-11 03:21:11
【问题描述】:
如果我有一个多行字符串,其中包含“\n”作为文本本身的一部分,例如:
python_text = """
@commands.command()
def multi():
print("Three\nLines\nHere")
"""
如何删除除文本本身中的换行符之外的所有换行符?我尝试使用splitlines() 创建一个列表,但多行字符串也将在文本本身的\n 上拆分。出于同样的原因,将 splitlines(True) 与 strip() 结合使用是行不通的。
print(python_text.splitlines())
输出(格式化):
[
'@commands.command()',
'def multi():',
' print("Three',
'Lines',
'Here")'
]
虽然我想要的输出是:
[
'@commands.command()',
'def multi():',
' print("Three\nLines\nHere")'
]
(或多行字符串打印而不是列表打印,但格式相同)
有什么办法只能从多行字符串中去除“尾随”换行符? 如果有任何不清楚的地方,请告诉我,我会尝试进一步解释。
编辑:更正了关于 splitlines() 和 strip() 的解释。
【问题讨论】:
标签: python python-3.x string newline