我想在 python 中添加一个到我的数据目录的路径,这样我就可以从该目录读取/写入文件,而无需一直包含它的路径。
例如,我的工作目录位于
/user/working
,我当前正在文件 /user/working/foo.py
中工作。我的所有数据也都在目录 /user/data
中,我想在其中超出文件 /user/data/important_data.csv
。
在
foo.py
中,我现在可以使用 pandas 读取 csv
import pandas as pd
df = pd.read_csv('../data/important_data.csv')
这完全有效。我只是想知道是否有办法将
/user/data
作为文件的主路径,这样我就可以使用 读取文件
import pandas as pd
df = pd.read_csv('important_data.csv')
我唯一的想法是通过
sys.path.append('/user/data')
添加路径,但这不起作用(我猜它只适用于导入模块)。
如果可能的话,有人可以提供任何想法吗?
PS:我真正的问题当然更复杂,但是这个最小的例子应该足以解决我的问题。
看起来您可以使用
os.chdir
来实现此目的。
import os
os.chdir('/user/data')
请参阅 https://note.nkmk.me/en/python-os-getcwd-chdir/ 了解更多详细信息。
如果您将所有内容都保留在
/user/data
中,为什么不使用 f 字符串来简化此操作呢?您可以将目录分配给配置中的变量,然后在字符串中使用它,如下所示:
在某个配置中:
data_path = "/user/data"
稍后阅读...
df = pd.read_csv(f"{data_path}/important_data.csv")
当我必须使用根文件夹中的数据时,这对我有用
import pandas as pd
df = pd.read_csv(r'../USER/Data/Data.csv')