python3.x 如何從str中提取bytes?
01-01
例如 s = "b"xe4xb8xadxe6x96x87""
如何把 s 轉換為 b = b"xe4xb8xadxe6x96x87『
@依雲 提到的 eval 是不安全的,ast.literal_eval 是按 Python 語法來解析字面量的函數,這個場景可以使用這個方法來解決。
import ast
s = r"b"xe4xb8xadxe6x96x87""
print(ast.literal_eval(s)))
eval. 或者自己寫解析器。
s = r"b"xe4xb8xadxe6x96x87""
bytes.fromhex("".join(s[2:-1].split("\x")[1:]))
應該有更高效的。試試struct的pack和unpack
使用binaacii.hexlify()
binascii.unhexlify()
可能符合你的需求都Python3了,str和bytes是可以互轉(編碼/解碼)的,類似Java。string.encode()
推薦閱讀:
※python安裝pandas包快要崩潰了?
※Python pygame如何安裝?
※python中 from . import ×××的那個點是表示當前包嗎?
※python3.5可以安裝Twisted嗎?
※windows系統下,首行# !/usr/bin/env python是不是沒有用?