次のようなエスケープされたデータを含む文字列があります
escaped_data = '\\x50\\x51'
print escaped_data # gives '\x50\x51'
どのPython関数がそれをエスケープ解除するので、私は得るでしょう
raw_data = unescape( escaped_data)
print raw_data # would print "PQ"
次のようなエスケープされたデータを含む文字列があります
escaped_data = '\\x50\\x51'
print escaped_data # gives '\x50\x51'
どのPython関数がそれをエスケープ解除するので、私は得るでしょう
raw_data = unescape( escaped_data)
print raw_data # would print "PQ"
でデコードできますstring-escape
。
>>> escaped_data = '\\x50\\x51'
>>> escaped_data.decode('string-escape')
'PQ'
Python 3.0にはありませんstring-escape
が、を使用できますunicode_escape
。
bytes
オブジェクトから:
>>> escaped_data = b'\\x50\\x51'
>>> escaped_data.decode("unicode_escape")
'PQ'
Unicodestr
オブジェクトから:
>>> import codecs
>>> escaped_data = '\\x50\\x51'
>>> codecs.decode(escaped_data, "unicode_escape")
'PQ'
'unicode_escape'コーデックを使用できます。
>>> '\\x50\\x51'.decode('unicode_escape')
u'PQ'
または、「string-escape」を使用すると、従来のPython 2文字列(Python 3ではバイト)が得られます。
>>> '\\x50\\x51'.decode('string_escape')
'PQ'
escaped_data.decode('unicode-escape')
助けますか?
試す:
eval('"' + raw_data + '"')
動作するはずです。