为了账号安全,请及时绑定邮箱和手机立即绑定

如何获取文本文件中十六进制数的长度

如何获取文本文件中十六进制数的长度

江户川乱折腾 2022-07-26 21:03:48
我有许多文本文件,每个文件中有一个长十六进制数字。我想找出每个十六进制数的长度,即['FFFF0F'] =6,['A23000000000000FD'] =17。我读了文件:file_to_open = open(myFile , 'r')filey = file_to_open.readlines()print(type(filey))a = hex(int(filey, 16))print(type(a))n = len(filey)print('length = ', n)我的错误是:TypeError: int() cannot convert non-string with explicit base如果我删除基数 16,我会收到错误消息:TypeError : int() argument must be a string, a bytes-like object or a number, not 'list'关于如何读取数字并找到它包含多少个十六进制数字的任何想法?
查看完整描述

1 回答

?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

readlines返回s (lines) - 如果list是str单行文件,它是一个元素的列表。用于read将整个文本获取为单个str、strip前导和尾随空格,然后只需获取len:


with open(myFile , 'r') as f:

    filey = f.read()

filey = filey.strip()

n = len(filey)

另请注意,我使用过with所以我不必关心自己关闭该文件句柄。我假设你所有的文件都是单行的并且包含一些十六进制数字。请注意,如果您的数字有任何前导0s,它们也会被计算在内,例如长度000F为 4。


查看完整回答
反对 回复 2022-07-26
  • 1 回答
  • 0 关注
  • 147 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号