项目目录的Python文件夹结构,易于导入

use*_*014 8 python import directory-structure pycharm python-3.x

我的团队在python3中有一个包含几个小项目的文件夹.其中,我们有一个具有多个实用程序功能的实用程序文件夹,在整个项目中使用.但是导入它的方式非常不舒服.这是我们使用的结构:

temp_projects
    util
        storage.py
        geometry.py
    project1
        project1.py
    project2
        project2.py
Run Code Online (Sandbox Code Playgroud)

问题是项目中的导入看起来很糟糕:

sys.path.insert(1, os.path.join(sys.path[0], '..'))
import util.geometry

util.geometry.rotate_coordinates(....)
Run Code Online (Sandbox Code Playgroud)

此外,pycharm和其他工具无法理解它并提供完成.

有没有更简洁的方法呢?

编辑:所有的项目和工具都是非常多的工作,经常修改,所以我正在寻找尽可能灵活和舒适的东西

Vad*_*der 2

PYTHONPATH环境变量可能是一种方法。只需将其设置为项目文件夹位置:

PYTHONPATH=/somepath/temp_projects
Run Code Online (Sandbox Code Playgroud)

您将可以util按如下方式使用:

import util.geometry

util.geometry.rotate_coordinates(....)
Run Code Online (Sandbox Code Playgroud)

PyCharm 也会自动识别它。