【问题标题】:Python : Can't read '\\' as a string [duplicate]Python:无法将“\\”读取为字符串[重复]
【发布时间】:2018-07-19 13:24:14
【问题描述】:

我想用 'ext' 替换字符串:'li\\oa' 但我收到此错误

错误:八进制转义值 \505 超出范围 0-0o377

我知道问题是:包含这些字符'\\'的字符串,所以问题是:我如何将这些反斜杠读取为字符串。

df['col']= df['col'].replace(['li\\oa'],['ext'], regex=True)

【问题讨论】:

  • Nvm,我找到了答案,你需要放 '\\\\' 反斜杠才能让 python 将其视为 '\\'

标签: python string pandas character-encoding


【解决方案1】:

您必须通过为每个反斜杠添加一个“\”来转义两个反斜杠:

df['col']= df['col'].replace(['li\\\\oa'],['ext'], regex=True)

【讨论】:

  • 是的,谢谢,我已经这样做了
  • 成功了吗?
  • 如果成功,请将问题标记为已解决。
【解决方案2】:

您可以将一个字符串声明为原始字符串(前面带有一个 r),它将打印其所有字符:

>>> string = r'li\\oa'
>>> print string
'li\\oa'

How to print backslash with Python?

【讨论】:

  • 我想替换而不是打印
  • 与打印无关。 'r' 将使其成为原始字符串。
猜你喜欢
  • 1970-01-01
  • 2013-04-12
  • 1970-01-01
  • 1970-01-01
  • 2013-01-15
  • 1970-01-01
  • 1970-01-01
  • 2016-12-21
  • 1970-01-01
相关资源
最近更新 更多