簡體   English   中英

在Python中將字節文本(類型是字符串)轉換為字符串

[英]convert byte text( type is string) to string in python

我有一個像這樣的字符串: s = "b'1f\\xe6\\xb5\\x8b\\xe7\\xbb\\x98'"

如何將其轉換回原始字符串?

我嘗試使用eval(s) ,但是得到SyntaxError: bytes can only contain ASCII literal characters.

不要使用eval ,這很危險。 請改用ast.literal_eval ,然后解碼為類似@Amadan的字符串:

import ast
s = r"b'1f\xe6\xb5\x8b\xe7\xbb\x98'"
res = ast.literal_eval(s).decode()
print(res)  # --> '1f測繪'

如評論中所述,我的s實際上具有一個repr "b'1f\\\\xe6\\\\xb5\\\\x8b\\\\xe7\\\\xbb\\\\x98'" 您能否確認print(repr(your_string))print(your_string)什么樣?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM