我创建了以下包树:
/main_package
/child_package
version.py
其中version.py包含单个字符串变量(VERSION)
在子包中的脚本中,我通过以下行导入version.py:
from main_package.version import VERSION
当我从PyCharm运行代码时,一切都很好,但是当我通过命令行运行代码时,我收到以下错误消息:
C:\Users\usr\PycharmProjects\project\main_package\child_package>python script.py
Traceback (most recent call last):
File "script.py", line 2, in <module>
from main_package.version import VERSION
ModuleNotFoundError: No module named 'main_package'
我在互联网上发现我可能需要将我的包添加到python路径,但它似乎对我不起作用
答案 0 :(得分:2)
PyCharm将Python Path设置为项目的根目录(默认情况下)。要以一种快速的方式模仿它,你只需要在shell会话中执行一次,然后再调用python whatever
:
set PYTHONPATH=C:\Users\usr\PycharmProjects\project
答案 1 :(得分:0)
pythonic方法是使用setup.py
文件在系统中安装项目(检查python Minimal Structure):
from setuptools import setup
setup(name='main_package',
version='0.1',
description='main package',
license='MIT',
packages=['main_package'],
zip_safe=False)
然后按如下方式安装:
python setup.py install
用于全局安装OR
python setup.py develop
以可编辑模式进行本地安装