文件路径的Python常量[重复]
Posted
技术标签:
【中文标题】文件路径的Python常量[重复]【英文标题】:Python Constants for a file path [duplicate] 【发布时间】:2017-06-16 21:51:42 【问题描述】:我需要一个文件(数据库)路径的常量,作为 base_directory。我知道python中没有真正的常量。
我是这样设置的:
base_dir = (os.getcwd().rsplit('\\', 2)[0],)
我需要在不同目录/文件夹级别/深度中的多个文件中使用此值。所以我创建了一个带有变量的文件,然后在需要的地方导入文件。
问题是base_dir
不是基于导入文件的位置(路径)计算的,而是基于当前文件的位置。
所以我根据路径深度有不同的路径。
我可以每次更改base_dir
以适应新路径,但我不仅需要重复 var 声明,还需要为每个文件重复很多相关代码。
如何解决这个问题,模拟路径的常量?
【问题讨论】:
【参考方案1】:无需使用os.getcwd。使用os.path.abspath 获取您的常量文件路径:
file_abs_path = os.path.abspath(os.path.dirname(__file__))
并使用os.path.join 构建数据库文件的路径:
database_path = os.path.join(file_abs_path, '..', 'path', 'to', 'db)
然后导入常量并访问constants.database_path
。
【讨论】:
以上是关于文件路径的Python常量[重复]的主要内容,如果未能解决你的问题,请参考以下文章