删除python RTL(从右到左)语言文本中的换行符

删除python RTL(从右到左)语言文本中的换行符,python,Python,我正在尝试从python文本中删除\r和\n字符。然而,当我的程序遇到“波斯语”文本时,这是没有效果的 text = 'این تتلو ۴ میلیون طرفدار داره\nینی الگوی ۴ میلیون نفره\nینی رو ۴ میلیون نفر تاثیر میذاره حرفاش\nاین یعنی فاجعه' text.replace("\r", '').replace("\n", '') # tried this, still not working text

我正在尝试从python文本中删除
\r
\n
字符。然而,当我的程序遇到“波斯语”文本时,这是没有效果的

text = 'این تتلو ۴ میلیون طرفدار داره\nینی الگوی ۴ میلیون نفره\nینی رو ۴ میلیون نفر تاثیر میذاره حرفاش\nاین یعنی فاجعه'

text.replace("\r", '').replace("\n", '') # tried this, still not working
text.rstrip("\r\n") #not working
text.translate(str.maketrans("\n\t\r", "   ")) # not working

print(repr(text))# repr() displays \n and \r on output

\n
仍保留。我认为这是一种
rtl
(从右到左)语言。在这种情况下,如何删除这些换行符?

您必须指定替换的结果:

text = 'این تتلو ۴ میلیون طرفدار داره\nینی الگوی ۴ میلیون نفره\nینی رو ۴ میلیون نفر تاثیر میذاره حرفاش\nاین یعنی فاجعه'

text = text.replace('\n', '')

print(repr(text))

replace
创建新的
str
对象:

text = 'این تتلو ۴ میلیون طرفدار داره\nینی الگوی ۴ میلیون نفره\nینی رو ۴ میلیون نفر تاثیر میذاره حرفاش\nاین یعنی فاجعه'
id(text)
140578645871120

id(text.replace("\r", '').replace("\n", ''))
4587132656
重新分配:

text2 = text.replace("\r", '').replace("\n", '')

text2
'این تتلو ۴ میلیون طرفدار دارهینی الگوی ۴ میلیون نفرهینی رو ۴ میلیون نفر تاثیر میذاره حرفاشاین یعنی فاجعه'

text.replace('\n','')
对我来说很好。Python 3.6
replace
translate
正在为我工作。。。Python3.6他的示例不起作用,因为他没有将
replace
的结果分配给
text
。如果他正在赋值,那么代码段就不正确。@vishes_shell:仔细阅读答案:重点不是他以不同的方式执行替换函数,而是需要赋值:)对不起,我也应该小心。:)