1.创建一组整型随机数,每隔1s将随机生成的值储存在临时数组中
2.创建一个每10s函数:将第一次储存的10个值相加,作为报警临界值,之后每隔10s相加的值与报警临界值比较大小。比较后:相加值与报警临界值相等时,把相加值存入数据库;不等时,调用警报函数

python根据自定义条件,筛选数据存入数据库
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 陈年椰子 2022-03-28 14:55关注
按这个需求, 看实际跑的脚本, 可能合适的数据较少
修改随机值范围小一些,相等机会大一些from threading import Thread from time import sleep from random import randint from pubsub import pub class Thread1(Thread): def __init__(self): """Init Worker Thread Class.""" Thread.__init__(self) print('采集线程Start ') def run(self): """Run Worker Thread.""" while True: pub.sendMessage('setval', status_val=randint(1,5)) sleep(1) class Thread2(Thread): def __init__(self): Thread.__init__(self) print('分析线程Start ') self.data = [] self.stand = 0 pub.subscribe(self.change_status, 'setval') def change_status(self, status_val): self.data.append(status_val) def wait_net_work(self): # 等待数据 while len(self.data)<10: sleep(1) def run(self): self.wait_net_work() print(self.data) self.stand = sum(self.data) print("基准",self.data) while True: self.data = [] sleep(10) self.wait_net_work() if sum(self.data) == self.stand: print("符合基准({}),调用保存数据代码".format(self.stand),self.data) else: print("不符合基准({}),调用警报函数代码".format(self.stand)) def test(): print('start test') t1 = Thread1() t1.start() t2 = Thread2() t2.start() if __name__ == '__main__': test()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 I350 Gigabit Network
- ¥15 关于#abap#的问题,请各位专家解答!
- ¥20 内网通过公网访问外网问题
- ¥20 谁有这个东西 继续教育的
- ¥15 怎么使请求通过cors
- ¥15 WDM 驱动ACPI 相关疑问
- ¥15 prism 跨窗体共享数据绑定 wpf
- ¥15 hdl designer突然用不了系统的moduleware组件,请问有人遇到或者怎么解决吗?
- ¥15 0基础计算机毕设,应该从哪开始?
- ¥60 使用DKT40脑图划分ROI区域