在Python中将字符转换为int,反之亦然

 皮H痞 发布于 2023-01-12 11:16

我有一个外部应用程序,在数据的开头附加数据包的长度.类似下面的代码:

x = "ABCDE"
x_len = len(x)
y = "GHIJK"
y_len = len(y)
test_string = chr(x_len) + x + chr(y_len) + y
#TODO:perform base64 encoding

在代码的客户端,我需要能够提取x_len和y_len并且可以读取x和y.

#TODO:perform base64 decoding
x_len = int(test_string[0])
x = test_string[:x_len]

我收到以下错误:ValueError:int()的基数为10的无效文字:'\ x05'

我假设int的参数是十六进制的,所以我在传递给int之前需要做一些解码.有人可以给我一个指针,说明从解码中使用什么功能,或者有没有更简单的方法来完成这个?

1 个回答
  • 你可能想要ord(),而不是int(),因为ord()是相反的操作chr().

    请注意,您的代码仅适用于长度,255因为这是最大chr()ord()支持.

    2023-01-12 11:18 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有