【发布时间】:2023-03-14 07:44:01
【问题描述】:
我有一个从 Jupiter Notebook 转换而来的 python 文件,并且该文件夹中有一个名为“datasets”的子文件夹。当我尝试使用以下代码打开该“数据集”文件夹内的文件时:
import pandas as pd
# Load the CSV data into DataFrames
super_bowls = pd.read_csv('/datasets/super_bowls.csv')
它说没有这样的文件或文件夹。然后我添加这一行
os.getcwd()
输出是项目的顶级文件夹,而不是这个python文件的子文件夹。我想也许这就是它不起作用的原因。
那么,如何打开带有相对路径的 csv 文件?我不想使用绝对路径,因为此代码将在另一台计算机中使用。
为什么 os.getcwd() 没有得到实际的文件夹路径?
【问题讨论】:
-
在 Jupyter 单元格上键入
pwd时会看到什么? -
os.getcwd()工作正常。问题在于你的期望。当前工作目录是运行 Python 的目录,而不是任何特定源文件的目录。 -
奇怪的是,在我的 Jupiter Notebook 我有
pd.read_csv('datasets/super_bowls.csv'),它就像一个魅力。但是当我在直接 .py 文件上运行代码时,它不会。 -
当我输入 pwd 时,它会给我顶级文件夹。我的结构是“/Users/ivanparra/AprendizajePython/jupyter/datasets”。主文件位于 Jupyter 文件夹中,csv 位于 datasets 子文件夹中。
-
如果 python 文件在运行时是包的一部分,那么当前工作目录将是第一个 dunder init 文件所在的文件夹。但是如果你直接运行一个没有它的包的模块,那么这个工作目录将是 python 文件所在的位置。
标签: python pandas visual-studio-code