[英]How do a print a backslash-escaped string to output '\n' in Python?
In [4]: import re
In [5]: print(re.escape('\n'))
\
In [6]: print(re.escape(r'\n'))
\\n
In [7]: print(r'\n')
\n
In [8]: print('\n')
In [9]: print('\\n')
\n
第三個示例print(r'\\n')
給出了我想要的輸出(也是最后一個示例)。
但是我要打印的字符串是未定義為原始字符串的變量。
不用說我不能手動在字符串中添加反斜杠。
使用repr()
將值打印為Python代碼:
print(repr('\n'))
...將發出:
'\n'
如果要刪除開頭和結尾字符,請執行以下操作:
print(repr('\n')[1:-1])
...只會發射
\n
...但是這不是面向未來的(某些字符串可能會以不同的引號發出,如果不是今天,則在將來的實現中;因此在輸出中包括文字引號是安全的選擇)。
請注意,在格式字符串中,可以使用!r
修飾符指示要應用repr()
:
print('Value: {!r}'.format('\n'))
...將發出:
Value: '\n'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.