【问题标题】:python print escape backslashpython打印转义反斜杠
【发布时间】:2016-05-25 19:01:11
【问题描述】:

我需要 python 来生成完全这样的字符串文字:

e.b=\"e\"

但我不知道该怎么做。 我正在尝试:

r'e.b=\"e\"'      =>     e.b=\\"e\\"
"""e.b=\"e\""""   =>     e.b="e"

还有许多其他可能性,但任何最终都完全是 e.b=\"e\"

有什么想法吗?

【问题讨论】:

  • 第一个 (r'e.b=\"e\"') 应该是正确的。当python解释器打印时,它会显示单个` characters as \`,但是如果你将它输出到一个文件中,它应该只是一个`.
  • 您的原始字符串可以满足您的需求。尝试使用print 打印它,或将其写入文件。并打印它的长度,应该是 9。

标签: python string python-2.7


【解决方案1】:

嗯,你第一次做对了,只是你检查了你创建的字符串的repr,而不是字符串本身:

s = r'e.b=\"e\"'
s  # this is the repr() of the string
=> 'e.b=\\"e\\"'
print(repr(s))
=> 'e.b=\\"e\\"'
print(s)  # this is what you want
=> e.b=\"e\"

底线,s=r'e.b=\"e\"' 是你想要的。

【讨论】:

    【解决方案2】:

    您是否在考虑这样打印?

    import re
    d = re.escape(r'e.b=\"e\"')
    print d
    

    【讨论】:

      猜你喜欢
      • 2013-11-10
      • 2015-09-21
      • 1970-01-01
      • 2019-05-05
      • 1970-01-01
      • 2019-01-13
      • 2015-05-19
      • 1970-01-01
      相关资源
      最近更新 更多