从另一个目录中的另一个脚本运行脚本

时间:2019-07-16 13:24:06

标签: python path

我正在尝试从位于其他目录中的results.py运行app.py。我有以下映射:

App/
---model/
--------model.csv
---results/
----------results.py
---app.py

results.py

def get_file():
    df = pd.read_csv('../model/model.csv')
    ...

我试图更改工作目录,但是我仍然有FileNotFoundError

app.py

curr_dir = os.path.dirname(os.path.abspath(__file__))
path = os.path.join(curr_dir, 'results')
subprocess.Popen("ls", cwd=path)
get_file()

2 个答案:

答案 0 :(得分:1)

可以快速解决

def get_file():
    try:
        df = pd.read_csv('../model/model.csv')
    except FileNotFoundError:
       df = pd.read_csv('./model/model.csv')

答案 1 :(得分:0)

  

我正在尝试从其他目录中的app.py运行results.py

您可以在路径中的“结果/”文件中创建__init __。py:

#file __init__.py

from .results import get_file

,然后在app.py中,您可以调用此代码:

import results

results.get_file()