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

How to refer to files in project directory?

我有一些函数存储在一个单独的文件中,它们从 csv 文件访问数据。在脚本的开头我 运行

current_dir = os.getcwd()

然后所有文件名的格式为:

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

它运行良好,但前提是从项目主目录中的文件调用该函数,否则找不到 \data\ 目录

我可以将目录设置为:

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

但我每次将它移到新机器时都必须记住手动更改它。

如何设置目录名称,以便项目可以传输到不同的计算机/平台,并且仍然可以 运行 并从目录 Project/data/ 加载文件,无论项目在磁盘上的位置

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

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

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)

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