【发布时间】:2021-05-11 13:35:19
【问题描述】:
在 python 中,你可以将 python 中的任何类型更改为这样的字符串:
str(data)
有没有办法像str(data) 方法一样将任何类型更改为字节? (没有 if 语句)?
类似bytes(data):
# examples
data = "hello"
data = bytes(data) # data is now b'hello'
data = 23423
data = bytes(data) # data is now b'23423'
data = b'nice'
data = bytes(data) # data is now b'nice'
data = [0, 3]
data = bytes(data) # data is now b'[0, 3]'
使用str(data).encode() 或bytes(str(value), "utf-8") 不是我想要的,因为当数据data = b'dsfsdf' 输出是b"b'dsfsdf'"。
【问题讨论】:
-
bytes(str(value), "utf-8") -
@Martheen 我正在尝试不导入库
-
@lordcommander,这不是你的问题。
-
没有内置函数可以完全满足您的需求。你基本上想要
data if isinstance(data, bytes) else str(data).encode()