如何 运行 像 pycharm 那样的 python 程序

How to run a python program like pycharm does

我使用 pycharm 在 python 开发一个项目已有一段时间了。我在 pycharm 中 运行 没问题,但我想尝试从命令行 运行 宁它(我正在使用 windows)。 当我尝试从根目录中使用 python <filename> 运行 我的主文件时,我收到一个模块未找到错误。什么是 pycharm doing/how 我可以复制它吗? 此外,pycharm 创建 pycache 文件夹。如果我的理解是正确的,它会编译文件,这会使 运行 时间更快。由于我的运行时间已经很长了,我也想这样做。

我正在使用 python 3.6

编辑

文件结构

    -Root\
    ----scheduler\
        ------main.py
        ------matrices
        ------models
        ------rhc
        ------Singleton.py
        ------utils.py
        ------__init__.py
        ------apis\
                acedb.py
                metrics.py
                __init__.py
        ------matrices\
                distancematrix.py
                __init__.py
        ------models\
                branch.py
                constants.py
                customer.py
                dispatch.py
                technician.py
                workorder.py
                __init__.py
        ------rhc\
                pathfinder.py
                rhc.py
                schedule.py
                sched_time.py
                tech_schedule.py
                __init__.py

编辑 2

找到解决方案,我不得不将我的主要文件移到模块之外 谢谢!

例如,如果您有以下文件夹结构。添加一个名为 init.py 的空文件并从你的 app.py 导入,如果你有 Module1Class ,你总是可以像这样导入它

from modules.module1 import Module1Class
from modules.module2 import Module2Class

文件夹结构

/app.py
/modules
    /module1.py
    /module2.py
    /__init__.py 

第一次从 python app.py 这样的终端朗姆酒 app.py 时,将创建 .pyc 文件,为您留下以下文件夹结构

/app.py
/modules
    /module1.py
    /module1.pyc
    /module2.py
    /module2.pyc
    /__init__.py 

请参阅 python 文档,因为它详细介绍了如何创建模块和导入模块。我更习惯 python2.7 ,所以我的回答可能不完全适合较新的 python 版本。

https://docs.python.org/3/tutorial/modules.html

从那里您可以了解有关 __ init __.py 和模块创建、导出和导入的更多信息

PS:我只使用文本编辑器在 python 中开发,因为我发现 pycharm 有点重,所以我无法解释 pycharm 在幕后工作。

请参阅 了解 ModuleNotFoundError 描述的一个很好的示例(很快得到答复)

我打赌 pycharm 配置为使用不同的 python 虚拟环境解释器。