如何让另一个 .py 文件识别来自另一个 .py 文件的输入?
How to make another .py file recognize an input from another .py file?
所以我有两个 .py 文件,fileA.py 和 fileB.py.
fileA.py 将使 fileB.py 运行.
但首先,fileA.py 将有一个脚本来询问文件夹目录作为输入。
from pathlib import Path
import subprocess
import sys
from tkinter.filedialog import askdirectory
pathcase = askdirectory(title='path to folder')
scripts = [
'fileB.py'
]
parent = Path(__file__).resolve().parent
for script in scripts:
script_path = parent / script
subprocess.call([sys.executable, script_path])
如何制作 fileB.py 运行 并识别“pathcase”输入?
fileB.py 有:
#!/usr/bin/env pvpython
from paraview.simple import *
from fileA import pathcase
casefoam = OpenFOAMReader(registrationName='case.foam', FileName='{}/case.foam'.format(pathcase))
现在发生的事情是 fileA.py 运行s fileB.py 并询问每次都再次输入,循环。
我建议保留一个 config.py
模块来存储所有全局使用的变量,在本例中为 pathcase。只需在应用程序的所有模块中导入配置模块;然后该模块可作为全局名称使用。它将按以下方式工作:
config.py
n = 10
文件A
import config
config.n = 20
文件B
import config
import fileA
print(config.n)
这样,您的代码将保持优雅、可读,并且应该解决您运行遇到的问题。 :)
所以我有两个 .py 文件,fileA.py 和 fileB.py.
fileA.py 将使 fileB.py 运行.
但首先,fileA.py 将有一个脚本来询问文件夹目录作为输入。
from pathlib import Path
import subprocess
import sys
from tkinter.filedialog import askdirectory
pathcase = askdirectory(title='path to folder')
scripts = [
'fileB.py'
]
parent = Path(__file__).resolve().parent
for script in scripts:
script_path = parent / script
subprocess.call([sys.executable, script_path])
如何制作 fileB.py 运行 并识别“pathcase”输入?
fileB.py 有:
#!/usr/bin/env pvpython
from paraview.simple import *
from fileA import pathcase
casefoam = OpenFOAMReader(registrationName='case.foam', FileName='{}/case.foam'.format(pathcase))
现在发生的事情是 fileA.py 运行s fileB.py 并询问每次都再次输入,循环。
我建议保留一个 config.py
模块来存储所有全局使用的变量,在本例中为 pathcase。只需在应用程序的所有模块中导入配置模块;然后该模块可作为全局名称使用。它将按以下方式工作:
config.py
n = 10
文件A
import config
config.n = 20
文件B
import config
import fileA
print(config.n)
这样,您的代码将保持优雅、可读,并且应该解决您运行遇到的问题。 :)