如何引用项目目录中的文件?

时间:2019-05-14 11:13:27

标签: python python-os

我有一些功能存储在单独的文件中,它们访问csv文件中的数据。在脚本开始时,我运行

current_dir = os.getcwd()

,然后所有文件名都采用以下格式:

file_name = current_dir + '\\data\\file.csv'

它很好用,但是仅当从项目主目录中的文件调用该函数时,否则找不到\data\目录

我可以将目录设置为:

 os.chdir('D:\\Projects\\Project\\data')

但是我必须记得每次将其移动到新计算机上时都要手动对其进行更改。

如何设置目录名称,以便该项目可以转换到不同的计算机/平台,并且无论项目在磁盘上的何处,仍可以运行并加载来自导向器Project/data/的文件

1 个答案:

答案 0 :(得分:2)

据我了解,您正在尝试引用文件系统中某些路径中的某些文件。

我建议您将它们全部放置在项目的根目录中,并使用如下相对路径引用它们。

import os
project_root_dir = os.path.dirname(os.path.abspath(__file__))
filepath = project_root_dir + name_of_the_file
#or
filepath = os.path.join(project_root_dir , name_of_the_file)

否则,您需要对其进行硬编码,这会导致进一步的问题。