如何在Python中正确编写原始多行字符串?

发布于 2021-01-29 14:10:23

  1. 我知道您可以通过以下几种方式创建多行字符串:

三引号

'''
This is a 
multi-line
string.
'''

级联

('this is '
'a string')

转义

'This is'\
'a string'
  1. 我也知道,在字符串前面加上前缀r将使它成为原始字符串,对于文件路径很有用。
    r'C:\Path\To\File'
    

但是,我有一个长文件路径,该文件路径既跨越多行,又需要是原始字符串。我该怎么做呢?

这有效:

In [1]: (r'a\b'
   ...: '\c\d')
Out[1]: 'a\\b\\c\\d'

但是由于某些原因,这不是:

In [4]:  (r'on\e'
   ...: '\tw\o')
Out[4]: 'on\\e\tw\\o'

为什么"t"只有一个反斜杠?

关注者
0
被浏览
132
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您需要r在每个字符串文字上加一个前缀

    >>> (r'on\e'
         r'\tw\o')
    'on\\e\\tw\\o'
    

    否则,第一部分将被解释为原始字符串文字,但字符串的下一行则不会,因此'\t‘被解释为制表符。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看