【问题标题】:ValueError: invalid \x escape in this case [duplicate]ValueError:在这种情况下无效 \x 转义[重复]
【发布时间】:2013-01-18 09:32:49
【问题描述】:

可能重复:
Why is ‘\x’ invalid in Python?

realId = 'Test'
id = ""
for x in realId:
 id += '\x'+str(ord(x))
print id

老实说,我对 python 和 askii 转换还很陌生,所以这应该是一个快速的答案。创建此字符串时出现错误,有人愿意指出正确的方向吗?

【问题讨论】:

  • 是的,我读到了,但我不知道如何在运行时创建它们

标签: python


【解决方案1】:

这是你要找的吗?

>>> realId = 'Test'
>>> id = ""
>>> for x in realId:
...     id += r'\x'+str(ord(x))
... 
>>> print id
\x84\x101\x115\x116

【讨论】:

    【解决方案2】:

    你在找这个吗?

    realId = 'Test'
    id = ""
    for x in realId:
       id += r'\x%02x' % ord(x)
    print id  # \x54\x65\x73\x74
    

    【讨论】:

      【解决方案3】:

      您尝试做的事情是不可能的,因为\x__ 是字符串语法的一部分,不能动态完成。但是,您可以使用chr 来获取等效字符:

      >>> chr(0x01)
      '\x01'
      >>> chr(0x41)
      'A'
      

      【讨论】:

        猜你喜欢
        • 2019-12-14
        • 1970-01-01
        • 1970-01-01
        • 2016-09-27
        • 2013-02-22
        • 1970-01-01
        • 2019-12-15
        • 1970-01-01
        相关资源
        最近更新 更多