关于“Python 字符串与二进制串的相互转换示例”,以下是完整的攻略,包含具体的示例说明。
标题:Python 字符串与二进制串的相互转换示例
什么是字符串与二进制串?
在 Python 中,字符串(string)是一种表示文本数据的类型,由一系列 Unicode 编码组成。而二进制串(binary)是一种表示二进制数据的类型,由一系列 0 和 1 的位组成。
将字符串转换为二进制串
在 Python 中,可以使用 bytes
函数将字符串转换为二进制串。例如:
string = "Hello World"
binary = bytes(string, encoding="utf8")
print(binary)
输出结果为:b'Hello World'
,其中 b
表示该变量是二进制串类型。
将二进制串转换为字符串
在 Python 中,可以使用 decode
方法将二进制串转换为字符串。例如:
binary = b'Hello World'
string = binary.decode("utf8")
print(string)
输出结果为:Hello World
实战示例 1:发送二进制数据
假设我们需要将一份二进制文件通过网络发送给其他用户,可以使用以下代码:
import socket
# 读取文件
with open("file.bin", "rb") as f:
data = f.read()
# 发送数据
sock = socket.socket()
sock.connect(("127.0.0.1", 8080))
sock.sendall(data)
sock.close()
上述代码中,open
函数以二进制方式打开文件,并读取其中的二进制数据;而 sendall
方法则将二进制数据发送给指定 IP 和端口的主机。
实战示例 2:使用 Base64 编码
有时候,二进制数据需要在不同系统之间传输或存储,为了保证数据的正确性,我们可以使用 Base64 编码将二进制数据转换为字符串。以下是一个示例:
import base64
# 读取文件
with open("file.bin", "rb") as f:
data = f.read()
# 将二进制数据转换为字符串
encoded = base64.b64encode(data).decode("utf8")
# 将字符串转换回二进制数据
decoded = base64.b64decode(encoded)
# 保存文件
with open("encoded.bin", "wb") as f:
f.write(decoded)
上述代码中,使用 base64.b64encode
函数将二进制数据进行编码,得到一个字符串。之后使用 base64.b64decode
函数将字符串进行解码,得到原始的二进制数据。最后,使用 open
函数以二进制方式打开文件,并写入解码得到的二进制数据。
以上是“Python 字符串与二进制串的相互转换示例”的完整攻略,希望能帮到您!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 字符串与二进制串的相互转换示例 - Python技术站