1

我对 Python 中的文件输出有疑问。我正在设计一个从 3 个传感器读取值的软件。每个传感器在 1 秒内读取 100 个值,在每个进程之间,我必须将它们打印到文件中。

time_memory = [k + i/100 for i in range(100)] # dividing 1 second into 100 intervals
x = [100 elements]
y = [100 elements]
z = [100 elements]

下面是写入文件的代码。

for i in range(self.samples):
    self.time_memory[i] = file_time + self.time_index[i] 
    f.write("{0} {1} {2} {3}\n".format(self.time_memory[i], x[i], y[i], z[i]))

所以文件中的结果看起来像

time_value, x, y, z
time_value, x, y, z
...

但是,当测量时间超过 8000 秒时,软件停止。我认为这是由于设备必须处理的数据太多,因为我使用的设备有点旧。(我无法更改设备,因为计算机已连接到 NI DAQ 设备。)

我试图找到许多替代方法来更改上面的代码,但我找不到。有没有人可以帮我解决这个问题??

4

1 回答 1

-1

一种建议是以二进制模式写入数据。这应该比文本模式更快(它也需要更少的空间)。因此,您必须像这样以二进制模式打开文件:

f = open('filename.data', 'wb') 
于 2016-09-14T08:10:05.233 回答