Jupyter Notebook使用open()函数时出现OSError:文件路径无效
解决OSError: [Errno 22] Invalid Argument 文件打开错误
问题根源
你遇到的错误核心是路径字符串里的转义字符被错误解析。看错误信息里的路径:'E:\\Project\\End-to-End Cricket Data Analytics\\Resources\\data-analytics-project-for-beginners\t20_json_files\t20_json_files\t20_wc_match_results.json'
其中\t被解析成了制表符,而不是路径中的\t组合,导致路径无效,触发OSError。
解决方案
直接修正路径的转义问题,三种可选方法:
1. 使用原始字符串(推荐)
在路径字符串前加r,让Python不解析反斜杠为转义字符:
import json with open(r"E:\Project\End-to-End Cricket Data Analytics\Resources\data-analytics-project-for-beginners\t20_json_files\t20_json_files\t20_wc_match_results.json") as f: data = json.load(f)
2. 用双反斜杠代替单反斜杠
把路径里的每个\替换成\\,避免转义:
import json with open("E:\\Project\\End-to-End Cricket Data Analytics\\Resources\\data-analytics-project-for-beginners\\t20_json_files\\t20_json_files\\t20_wc_match_results.json") as f: data = json.load(f)
3. 使用正斜杠作为路径分隔符
Windows系统支持正斜杠,直接替换所有\为/:
import json with open("E:/Project/End-to-End Cricket Data Analytics/Resources/data-analytics-project-for-beginners/t20_json_files/t20_json_files/t20_wc_match_results.json") as f: data = json.load(f)
额外排查步骤
如果以上方法仍无效,检查以下几点:
- 确认文件实际存在于指定路径,检查拼写(比如
t20_json_files重复两次是否正确) - 用以下代码查看Jupyter的当前工作目录,确保用文件名时文件在该目录下:
import os print(os.getcwd()) - 检查文件权限,确保当前用户有读取该文件的权限
内容的提问来源于stack exchange,提问作者srinrealyf
相关产品推荐
相关产品推荐

