python3中的编码和解码问题

python3 字符的编码和解码

今天在使用socket的时候,突然想把字符串写到外面,所以,研究了一下二进制的编码和解码的情况,详细介绍在下方的链接中:

http://c.biancheng.net/view/4305.html

我这里主要是研究了一下utf-8编码和GBK的二编码,输出的 A 和 B 的不同二进制编码,这样可以简单对比一下。

import socket

def main():
# 创建一个udp套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

dest_ip = "121.111.111.111"
dest_port = 7788
print("发送消息的 云服务器目标地址:%s 端口:%s " %(str(dest_ip),str(dest_port)))
# 可以使用套接字收发数据
# udp_socket.sendto("hahahah", 对方的ip以及port)
send_date = "----------你好呀----------"
#print(bin(send_date))
# udp_socket.sendto(b"hahahah------1----", ("192.168.33.53", 8080))
udp_socket.sendto(send_date.encode(), (dest_ip, dest_port))
A = send_date.encode("utf-8","strict") #等价于 send_date.encode()
B = send_date.encode("GBK","strict")
print(A)
print(B)
# 关闭套接字
udp_socket.close()


if __name__ == "__main__":
main()