2024-06-10 11:52:43 发布
网友
我需要从二进制文件中读取字符串列表并创建python列表。在
我正在使用下面的命令从二进制文件中提取数据:
tmp = f.read(100) abc, = struct.unpack('100c',tmp)
我在变量'abc'中看到的数据与下面显示的完全一样,但是我需要将下面的数据作为字符串放入python列表中。在
我需要的数据作为列表:“UsrVal”“VdetHC”“vcuhc”重力轴
如果你想用一种快速而混乱的方式,假设你的绳子
b'UsrVal\x00VdetHC\x00VcupHC\x00VdirHC\x00HdirHC\x00UpFlwHC\x00UxHC\x00UyHC\x00UzHC\x00VresHC\x00UxRP\x00UyRP\x00UzRP\x00VresRP\x00Gravity_Axis'
实际上被解释为
" b'UsrVal\x00VdetHC\x00VcupHC\x00VdirHC\x00HdirHC\x00UpFlwHC\x00UxHC\x00UyHC\x00UzHC\x00VresHC\x00UxRP\x00UyRP\x00UzRP\x00VresRP\x00Gravity_Axis' "
然后下面几行代码的结果是“b”拥有所需的数组。在
a = {YourStringHere} b = a[2:-1].split("\x00")
下面是我建议你用一条线来做的方法。在
您需要对二进制字符串进行解码,然后可以基于"\x00"进行拆分,这将返回您要查找的列表。在
"\x00"
例如
my_binary_out = b'UsrVal\x00VdetHC\x00VcupHC\x00VdirHC\x00HdirHC\x00UpFlwHC\x00UxHC\x00UyHC\x00UzHC\x00VresHC\x00UxRP\x00UyRP\x00UzRP\x00VresRP\x00Gravity_Axis' decoded_list = my_binary_out.decode("latin1", 'ignore').split('\x00') #or decoded_list = my_binary_out.decode("cp1252", 'ignore').split('\x00')
输出如下所示:
希望这有帮助
如果你想用一种快速而混乱的方式,假设你的绳子
实际上被解释为
然后下面几行代码的结果是“b”拥有所需的数组。在
下面是我建议你用一条线来做的方法。在
您需要对二进制字符串进行解码,然后可以基于
"\x00"
进行拆分,这将返回您要查找的列表。在例如
输出如下所示:
^{pr2}$希望这有帮助
相关问题 更多 >
编程相关推荐