Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在运行时覆盖uu pycache uuu_Python_Python 3.x_Caching - Fatal编程技术网

Python 在运行时覆盖uu pycache uuu

Python 在运行时覆盖uu pycache uuu,python,python-3.x,caching,Python,Python 3.x,Caching,我有一个python3脚本,我们称之为script.py,它从同一目录的其他python文件导入,因此它在运行时会创建一个\uuuupycache\uuu文件夹。据我所知,这个缓存是那些导入文件的二进制编译版本,以使它们执行得更快 我从终端执行script.py,因此它创建了那些缓存文件,并运行脚本,该脚本将运行一段时间。现在,如果我编辑script.py文件,更改一些参数,并在第一个终端仍在运行时从第二个终端再次运行它,会发生什么。这将创建一个不同的缓存,它将根据我的理解覆盖该文件夹。但这会干

我有一个python3脚本,我们称之为
script.py
,它从同一目录的其他python文件导入,因此它在运行时会创建一个
\uuuupycache\uuu
文件夹。据我所知,这个缓存是那些导入文件的二进制编译版本,以使它们执行得更快

我从终端执行
script.py
,因此它创建了那些缓存文件,并运行脚本,该脚本将运行一段时间。现在,如果我编辑
script.py
文件,更改一些参数,并在第一个终端仍在运行时从第二个终端再次运行它,会发生什么。这将创建一个不同的缓存,它将根据我的理解覆盖该文件夹。但这会干扰已经运行的第一个实例的计算吗

我的意思是,第一个实例在执行后会继续读取该缓存文件(从而读取错误的新修改参数),还是在启动时将其加载到内存中时只读取一次


第二个修改的脚本是否会干扰第一个脚本,或者它们是否完全隔离?

除非您更改
script.py
的内容,否则不会生成新的缓存。缓存实际上只是您的代码,已经编译过了。它不包含任何运行时数据等,因此将其导入不同的终端不会影响其他终端。如果您不想让Python生成缓存,可以使用,但这只会让模块的导入速度稍微慢一点,因为每次都需要重新编译。

我不是这么要求的。我担心第1个实例是否会在运行时从缓存中读取错误的数据,而第2个实例运行的是修改后的版本。如果在第一个实例中,在脚本中,变量
a=1
,那么如果我将脚本更改为
a=2
,第一个实例现在会读取缓存并设置
a=2
,还是会忽略对文件的任何更改,只使用内存中的预加载版本。我担心第二个修改的实例会覆盖第一个实例内存中的计算!