如何引用项目目录中的文件?
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)
否则您需要对其进行硬编码,这会导致更多问题。
我有一些函数存储在一个单独的文件中,它们从 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)
否则您需要对其进行硬编码,这会导致更多问题。