首页 > 解决方案 > 如何读取位于项目内不同目录中的文件?

问题描述

我建立了一个 Spyder 项目,其中我有位于特定文件夹中的代码和不同文件夹中的不同数据。基本上,我想使用相对路径或简单的方法来读取这些文件。让我们以下面的项目树为例:

项目树

我正在尝试使用“dummy_code.py”读取“dummy_csv.csv”。

我目前正在做的是这样的:

import pandas as pd
filepath= "../../../../../dummy_folder02/untitled folder/untitled folder/untitled
folder/dummy_data/dummy_csv.csv"
pd.read_csv(filepath)

我想知道是否有更优雅/更清洁的方式来做到这一点......

标签: pythonprojectspyder

解决方案


您可以将数据的根目录包含在系统路径变量中,然后仅使用相对路径:

import sys
sys.path.append(<absolute path to root data dir>)

filepath = "<relative path to csv file, in relation to the absolute path added to sys.path>"

例如:

sys.path.append("C:/my_datasets/dummy_folder02")
filepath = "untitled folder/untitled folder/untitled folder/dummy_data/dummy_csv.csv"

推荐阅读