python不能发送中文'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)

 

我们知道 socket 收发信息的时候传递的是二进制数据,默认编码采用的是 ascii 只支持 128 个字符,不支持中文,因此需要将编码调整为 utf-8

time_now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
return_msg = time_now + ':服务端已回复' + str(counter) + str(counter) #数字转字符串方法
counter += 1
c.send(return_msg.encode('utf-8'))

#c.send(return_msg.encode('ascii')),不支持,报错
posted @ 2023-01-09 11:36  txwtech  阅读(124)  评论(0编辑  收藏  举报