我知道在 Python 中不可能同时运行多个循环。无论如何,我需要实现的是我有一个循环运行读取传感器数据负载,每 0.25 秒。同时,我有并行运行的信号设备,需要每 3 秒发送一次信号。我的问题是实现这一目标的最佳实践是什么?编写两个脚本并并行运行它们是否有意义?使用线程有意义吗?有没有其他可能性可以使这项工作?我会非常感谢代码示例。谢谢!编辑:两个循环是绝对独立的。因此,假设在脚本 1 运行时读取传感器数据,当其中一个传感器接收到 最佳答案 “Python 同时执行多个循环。我知道这是不可能的 [...]” - 这看起来很有趣。可以同时运行两个循环,正如您所描述的那样。这两种方式都很有意义,这取决于您实际需要和想要什么。如果任务是完全独立的,您应该将其作为两个脚本运行。如果您需要这两个循环来实现一项任务,并且将它们放在一个文件中是有意义的,您可以使用 multiprocessing 。已针对 python 2.7.5+ 和 3.3.2+ 进行测试。这是一些最小的例子:from multiprocessing import Processimport timedef f(name): print('hello', name) time.sleep(10)def d(name): print('test2', name) time.sleep(10)if __name__ == '__main__': p1 = Process(target=f, args=('bob',)) p2 = Process(target=d, args=('alice',)) p1.start() p2.start() p1.join() p2.join()脚本运行了 10 秒,两个字符串都会立即打印出来,这意味着一切正常。time python3 ./process.pyhello bobtest2 alicereal 0m10.073suser 0m0.040ssys 0m0.016s关于Python同时进行多个循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21045179/
10-10 23:12