当前位置: 首页 > 面试题库 >

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

舒宏富
2023-03-14
问题内容
  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"只有一个反斜杠?


问题答案:

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

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

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



 类似资料:
  • 问题内容: Go是否与Python的多行字符串相似? 如果不是,编写跨多行字符串的首选方式是什么? 问题答案: 根据语言规范,您可以使用原始字符串文字,该字符串由反引号而不是双引号分隔。

  • 问题内容: 考虑: 那么我们如何获得报价,而不是斜杠? 并且请不要建议,因为那样的话,问题就变成了我们如何包括两种引号? 问题答案: 如果要在字符串中使用双引号而不是单引号,则可以只使用单引号作为分隔符: 如果在字符串中需要两种引号,请使用三引号引起来的字符串: 如果要在字符串中同时包含两种用三引号引起来的字符串(一种极不可能的情况),则不能这样做,并且必须使用带有转义符的非原始字符串。

  • 问题内容: 我正在搜索页面,您可以在其中输入搜索查询并将表单提交到。什么PHP函数是最好的,我应该使用它对搜索查询进行编码/解码? 问题答案: 对于URI查询,请使用;对于其他任何事情,请使用/。 和之间的区别是 根据 application/x-www-form-urlencoded编码(空格用编码),而 根据简单的 Percent-Encoding编码 (空格使用编码)。

  • 问题内容: 我已经开始使用LPTHW学习Python,并且开始练习16: http://learnpythonthehardway.org/book/ex16.html 并且觉得自己是个白痴,因为我无法弄清楚看似简单的“额外功劳”分配之一,但需要以下条件: 压缩为一行代码。我尝试了以下一些方法: 要么: 要么: 我只是无法让它在同一行中重写line1,line2和line3字符串。而且,我尝试了各

  • 问题内容: 我想创建一个Python程序,该程序需要多行用户输入。例如: 如何接收多行原始输入? 问题答案: 要将每一行作为字符串获取,你可以执行以下操作: Python 3:

  • 问题内容: 当我在Python中打开FIFO(命名管道)进行写入时,发生了非常奇怪的事情。考虑一下当我尝试打开FIFO以便在交互式解释器中进行写入时发生的情况: 以上行将阻塞,直到我打开另一个解释器并键入以下内容: 我不明白为什么我必须等待打开管道进行读取,但是让我们跳过它。上面的代码将阻塞,直到有可用的数据为止。但是,假设我回到第一个解释器窗口并输入: 预期的行为是,在第二个解释器上,对的调用将