7
  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"只有一个反斜杠?

4

2 回答 2

9

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

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

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

于 2017-09-01T15:27:18.833 回答
0

我认为您可能还需要像在r'on\e'

于 2017-09-01T15:27:02.767 回答