Если вы хотите использовать struct
, а предоставленный файл - единственный, из которого вы хотите извлечь данные, это можно сделать одним из способов:
import struct
with open("your_file.pcd") as f:
lines = f.readlines()
unpacker = struct.Struct("fff4B")
packed_data = lines[-1]
x = []
y = []
z = []
_ = []
for i in range(0, 246564):
try:
unpacked = unpacker.unpack_from(packed_data[i:])
except struct.error:
break
x.append(unpacked[0])
y.append(unpacked[1])
z.append(unpacked[2])
_.append(unpacked[3:])
print(x)
print(y)
print(z)
print(_)
Это, конечно, неОбщий подход к анализу файлов PCD, таких как PyPCD , есть, но он работает для этого конкретного файла и набора данных.