Jupyter学习中的问题--FileNotFoundError

python 复制代码
**import pandas as pd
pd.read_excel("Users/machh/Downloads/data_L/course_participants.xlsx")

错误在哪里

核心问题修正与关键说明

  1. 路径错误(最核心问题)
    路径 Users/machh/... 缺少根目录前缀 /,属于相对路径,Python 会从当前运行脚本的目录开始查找,而非系统根目录,导致文件找不到。
    正确绝对路径:/Users/machh/Downloads/data_L/course_participants.xlsx(macOS/Linux 系统)。
  2. 未赋值 DataFrame 对象
    pd.read_excel() 执行后会返回DataFrame 类型的数据集对象,必须将其赋值给变量(如 df),否则无法对数据进行后续操作(筛选、分析、可视化等)。
  3. 跨系统路径兼容说明
    macOS/Linux:路径分隔符为 /,绝对路径以 / 开头(如上述代码);
    Windows:路径分隔符为 \(需转义为 \),绝对路径以盘符开头(如 C:\Users\machh\...)。
  4. 必加异常处理
    添加 try-except 可以捕获文件不存在、路径错误、Excel 文件损坏等常见问题,避免程序直接崩溃,同时给出明确的错误提示。

实用技巧

  1. 查看当前工作目录(确认相对路径的基准目录)
python 复制代码
import os
print("当前工作目录:", os.getcwd())  # 若用相对路径,文件需放在此目录下
  1. 读取 Excel 指定 sheet
python 复制代码
df = pd.read_excel(file_path, sheet_name="Sheet1")  # sheet_name可传数字(0=第一个sheet)
  1. 处理大型 Excel 文件(提升读取速度,减少内存占用):
python 复制代码
df = pd.read_excel(file_path, usecols=[0,1,3])  # 只读取指定列

运行结果预期

若路径正确、文件正常,会输出:

数据前 5 行的内容(快速验证数据结构);

数据的基本信息(列名、非空值数量、数据类型等),示例如下:

python 复制代码
数据读取成功,前5行内容:
   学员ID  课程名称  报名时间  学习进度
0     1  Python  2026-01-01  100.0
1     2  Python  2026-01-02   80.0
2     3    SQL  2026-01-01   90.0
3     4  Python  2026-01-03   70.0
4     5    SQL  2026-01-02  100.0

数据基本信息:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 100 entries, 0 to 99
Data columns (total 4 columns):
 #   Column  Non-Null Count  Dtype         
---  ------  --------------  -----         
 0   学员ID    100 non-null    int64         
 1   课程名称   100 non-null    object        
 2   报名时间   100 non-null    datetime64[ns]
 3   学习进度   98 non-null     float64       
dtypes: datetime64[ns](1), float64(1), int64(1), object(1)
memory usage: 3.2+ KB
相关推荐
酿情师7 小时前
yihan:一款面向连续网页学习的智能侧边栏插件
学习·学习方法·工具·学习工具
yc_12247 小时前
用 Visual Studio 远程调试 Linux:从零到流畅的完整指南
linux·ide·visual studio
瞎某某Blinder7 小时前
DFT学习记录[6]基于 HES06的能带计算+有效质量计算
python·学习·程序人生·数据挖掘·云计算·学习方法
love在水一方9 小时前
VLN 入门学习计划 —— 基于 InternNav
学习
red_redemption11 小时前
自由学习记录(175)
学习
nashane12 小时前
HarmonyOS 6学习:画中画(PiP)状态同步与场景化实战指南
学习·pip·harmonyos·harmonyos 5
_李小白13 小时前
【android opencv学习笔记】Day 8: remap(像素位置重映射)
android·opencv·学习
勤劳的进取家13 小时前
数据链路层基础
网络·学习·算法
d111111111d13 小时前
直流电机位置式 PID 控制 和 舵机的区别
笔记·stm32·单片机·嵌入式硬件·学习
y = xⁿ14 小时前
Redis八股学习日记:布隆过滤器
数据库·redis·学习