为何df.to_pickle()报权限拒绝错误,df.to_excel()却可正常运行?
问题原因及解决办法
核心差异在于路径指向的对象类型不同:
- 调用
df.to_pickle(r"C:\Users\TomCruise\workspace")时,传入的是文件夹路径,to_pickle会尝试把文件夹当作文件写入二进制pickle数据,但操作系统不允许直接对文件夹执行写入文件的操作,因此抛出权限拒绝错误。 - 而
df.to_excel("file name.xlsx")传入的是具体文件名,Python会自动在当前工作目录下创建该Excel文件并写入内容,符合文件系统操作逻辑,所以能正常执行。
- 调用
解决办法:给
to_pickle指定具体的文件名,比如:# 完整路径写法 df.to_pickle(r"C:\Users\TomCruise\workspace\data.pkl") # 利用当前工作目录的简化写法 df.to_pickle("data.pkl")
内容的提问来源于stack exchange,提问作者Xtiaan
相关产品推荐
相关产品推荐

