如何打印单个反斜杠?

新手上路,请多包涵

当我写 print('\')print("\")print("'\'") 时,Python 不会打印反斜杠 \ 。相反,前两个错误并打印 '' 第三个。我应该怎么做才能打印反斜杠?


这个问题是关于生成一个包含单个反斜杠的字符串。这特别棘手,因为它不能用原始字符串完成。有关为什么这样的字符串用两个反斜杠表示的相关问题,请参阅 为什么反斜杠出现两次? .要在其他字符串中包含文字反斜杠,请参阅 using backslash in python (not to escape)

原文由 Michael 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.9k
2 个回答

你需要通过在它前面加上另一个反斜杠来逃避你的反斜杠:

 print("\\")

对于 Python 3 之前的版本:

 print "\\"

\ 字符称为转义字符,它对后面的字符进行不同的解释。例如, n 本身只是一个字母,但是当您在其前面加上反斜杠时,它变成 \n ,这是 _换行符_。

正如您可能猜到的那样, \ 也需要转义,因此它不像转义字符那样起作用。你必须……从本质上逃离。

有关 字符串文字,请参阅 Python 3 文档

原文由 Bucket 发布,翻译遵循 CC BY-SA 4.0 许可协议

一种不涉及转义的打印反斜杠的 hacky 方法是将其字符代码传递给 chr

 >>> print(chr(92))
\

原文由 Jean-François Fabre 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题