我正在尝试从SQLite数据库中读取数据的blob,并将blob的内容转换为浮点列表:
import sqlite3
import struct
conn = sqlite3.connect('my_database.sqlite')
c = conn.cursor()
c.execute('select my_column from my_table where time between \'2018-11-15 14:03:04\' and \'2018-11-15 14:03:08\'')
blob_of_data = c.fetchone()
在他的阶段,我有一个二进制数据元组。
如何遍历元组中的所有元素并使用struct.unpack
重新创建浮点列表?
答案 0 :(得分:0)
连接元组以获取带有原始数据的唯一字符串,然后对其进行解压缩。
假设您拥有(此处为Python 2):
t = ('\x00','\x00','\x80','?')
struct.unpack("f", "".join(t))
会给我所需的答案(1,)
Python3应该是:
t = (b'\x00',b'\x00',b'\x80',b'?')
struct.unpack("f", b"".join(t))