python中api内容动态更新怎么实现

目前在服务器上用一个py脚本接收单片机发送的套接字数据,用while ture来实时更新,要怎么做一个api来实现把最新数据放到api中,现在是一直卡在脚本里获取实时数据,下面的api.run根本不跑怎么办?换句话就是想让本来按照顺序执行程序的py实现两个程序并行

基于Monster 组和GPT的调写:
用 Flask 来实现一个 API,用于返回最新的单片机数据:

from flask import Flask, jsonify

app = Flask(__name__)

latest_data = {}  # 存储最新的数据

@app.route('/latest_data', methods=['GET'])
def get_latest_data():
    """获取最新的数据"""
    return jsonify(latest_data)

def update_latest_data():
    """定期更新最新数据"""
    while True:
        # 获取最新的数据,并存储在 latest_data 中
        latest_data = receive_latest_data()

if __name__ == '__main__':
    # 启动定期更新最新数据的线程
    from threading import Thread
    update_thread = Thread(target=update_latest_data)
    update_thread.start()

    # 启动 API
    app.run()


et_latest_data() 函数用于获取最新的数据,并返回一个 JSON 格式的响应。update_latest_data() 函数用于定期获取最新的数据,并将其存储在 latest_data 变量中。

通过将 update_latest_data() 函数放在一个单独的线程中运行,可以使其与 API 同时运行,实现并行处理。