Python:文件夹使用风格

Python:文件夹使用风格,python,architecture,directory,project,Python,Architecture,Directory,Project,想象一下,这个项目在不同的子文件夹中有许多脚本 有些脚本使用临时文件夹(访问系统范围的文件夹不是问题),有些脚本从其他子文件夹加载资源,因此/。模式被广泛使用 可以在IDE和控制台中运行它们。在IDE中,为所有可运行的脚本设置当前文件夹很容易,但当在控制台中运行时,设置当前目录其他运行的文件位置对脚本用户来说有点麻烦 在python中控制加载资源的最佳方法是什么?您可以查看一下,作为python包层次结构设置的参考 然后,考虑使用PKGyReales来使用这些文件: 无论如何,您可以使用文件获

想象一下,这个项目在不同的子文件夹中有许多脚本

有些脚本使用临时文件夹(访问系统范围的文件夹不是问题),有些脚本从其他子文件夹加载资源,因此
/。
模式被广泛使用

可以在
IDE
和控制台中运行它们。在IDE中,为所有可运行的脚本设置当前文件夹很容易,但当在控制台中运行时,设置当前目录其他运行的文件位置对脚本用户来说有点麻烦

python
中控制加载资源的最佳方法是什么?

您可以查看一下,作为python包层次结构设置的参考

然后,考虑使用PKGyReales来使用这些文件:

无论如何,您可以使用文件获取包的路径:

import os
this_dir, this_filename = os.path.split(__file__)
DATA_PATH = os.path.join(this_dir, "data", "data.txt")

在我的例子中,文件夹数量不是很大,所以我定义了
resourcelocator
static类。所有路径都相对地计算它的文件路径。任何需要加载资源的文件,请向该类请求文件夹:

导入操作系统
从枚举导入枚举
类资源类型(枚举):
配置文件、作业文件、输出文件夹=范围(3)
类资源定位器:
@静力学方法
def get_资源(资源类型):
file\u folder=os.path.dirname(\u文件\u)
out\u folder=file\u folder+“/../out/”
config\u folder=file\u folder+“/../config/”
path=“”
如果resource_type==ResourceType.ConfigFile:
path=os.path.abspath(config\u文件夹+config.ini)
elif resource_type==ResourceType.JobsFile:
path=os.path.abspath(配置文件夹+jobs.ini)
elif resource_type==ResourceType.OutFolder:
path=os.path.abspath(out_文件夹)+“/”
如果操作系统路径不存在(路径):
os.makedirs(路径)
返回路径
文件如何帮助访问其他文件夹中的资源?