警告:py_run_file_impl中的错误:ModuleNotFoundError:没有名为“ case1”的模块

时间:2018-07-20 09:49:28

标签: python r python-import importerror

我正在尝试通过R中的Shiny用户界面运行Python脚本。下面的代码可以运行它。 (我通过task1.py中的 Shiny 用户界面成功运行了server.R)。但是由于目录问题,我收到了错误消息。

文件夹路径:

D:\PycharmProjects\Tasks\applications\task1.py
D:\PycharmProjects\Tasks\server.R
D:\PycharmProjects\Tasks\case1\application_core.py

server.R:

  observeEvent(input$action,{
    py_run_file("applications/task1.py")
  })

task1.py:

import sys
import os  
from case1.application_core import AcousticScene

运行server.R时出现错误

Warning: Error in py_run_file_impl: ModuleNotFoundError: No module named 'case'
  76: <Anonymous>

请不要将此问题标记为重复,我在R中而不是在Python中得到。 task1.py在Pycharm中没有错误,并在其中成功运行。有人知道我该如何解决?

1 个答案:

答案 0 :(得分:1)

您会看到baseline\case1\application_core.py与工作目录和task.py位于不同的目录中。因此,假设baseline不在您的PYTHONPATH中,那么如果您想让task.py see \baseline\case1\application_core.py模块,则可以使用relative imports

from ...baseline.case1.application_core import AcousticScene