如何同时运行相同的python代码但不同的输入?

2024-09-26 22:13:44 发布

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

我有一个科学的模拟代码,可以做很多计算(解决ODE),需要几天的时间

  • 代码将创建一个保存输出的文件夹
  • 如果创建的文件夹存在,代码将创建另一个文件夹
  • 代码读取一些初始.txt文件,但不更改它们
  • 我没有任何设置文件或二进制文件。我基本上像python3 runSimulation.py一样运行模拟
  • 在运行结束时,代码将删除__pycache__和其他临时文件夹

我想问,如果我用一些输入(即txt文件)运行代码,并且在它完成之前,我用另一个输入再次运行代码,这种情况会发生任何差异吗?你能建议另一种方法(或最好的方法或最具Python风格的方法)吗

当我尝试这样做时,我并没有看到结果之间有任何差异,但我想说服自己。为了避免这种情况,我总是复制代码并在不同的位置为不同的输入运行它


Tags: 文件方法代码pytxt文件夹时间二进制
1条回答
网友
1楼 · 发布于 2024-09-26 22:13:44

每次运行脚本时,都会创建一个新进程。因此,假设您同时运行程序5次:将创建5个进程。进程之间不共享内存/作用域。因此,它们是完全独立的,互不影响。运行您的程序是安全的。但是,请确保每个进程的代码输出到不同的文件

编辑:

要确保每次运行单独的进程时都有不同的文件,请创建一个随机数,或者更好的方法是创建uuid,并使用此随机字符串命名文件夹

例如

import uuid
random_string = str(uuid.uuid4())
my_new_path = '/home/user/my-project/' + random_string + '/output'

这样,每次运行脚本时,都会创建一个具有唯一名称的新文件夹/文件,您可以将结果输出到其中

相关问题 更多 >

    热门问题