如何从.temp文件中读取流数据并将其提供给函数?

2024-04-25 11:52:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有来自许多传感器的流式数据,这些数据每秒更新到计算机上的.temp文件中。我试图找到一种方法,在数据到达时按顺序读取这些数据,并将其提供给我的函数,该函数应该对这些流数据执行计算。你知道吗

有没有办法从.tmp文件中读取此类数据,并在数据到达时在同一实例中执行计算?你知道吗


Tags: 文件数据实例方法函数顺序计算机流式
1条回答
网友
1楼 · 发布于 2024-04-25 11:52:05

也许这样的东西可以帮助我创建两个python文件一个reader一个writer:

例如,我的编写器将每秒向文本文件添加一个键为age的json字符串:

import random
import time
with open("test.txt", "a") as t:
    while True:
        time.sleep(1)
        t.write('{"age": ' + str(random.randint(1, 100)) + '}\n')
        t.flush()

读取器现在将读取最新写入的change行,并计算该数据的median。你知道吗

import json
import statistics

agearray = []

with open("test.txt", "rb") as t:
    current_filesize = t.seek(0, 2)
    while True:
        new_filesize = t.seek(0, 2)
        if new_filesize > current_filesize:
            print("file changed")
            print(new_filesize, current_filesize)
            t.seek(current_filesize)
            readsize = new_filesize - current_filesize
            data = t.read(readsize)
            myjson = json.loads(data.decode("utf-8"))
            print(myjson)
            agearray.append(myjson["age"])
            print(statistics.median(agearray))
            current_filesize = new_filesize

这不是最好的例子,但这将是我的方法。
您必须在两个不同的线程中启动文件,例如2x cmd或git bash。。。

相关问题 更多 >