You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pickle.load加载桌面keys.p文件时提示找不到文件或目录

解决Pickle反序列化时的"no such file or directory"错误

嘿,这个问题我碰到过好多次啦!本质就是Python找不到你的keys.p文件——因为你把它存在桌面,但Python默认会在当前运行脚本的目录里找,而不是桌面。给你几个靠谱的解决办法:

  • 直接使用绝对路径(最直接)
    你需要把文件的完整路径写进去,而不是只写文件名。不同系统的桌面路径格式不一样:

    • Windows系统:路径一般是C:\Users\你的用户名\Desktop\keys.p,注意要加个r前缀避免转义字符问题,代码如下:
      import pickle
      info = pickle.load(open(r"C:\Users\你的用户名\Desktop\keys.p", "rb"))
      
    • macOS/Linux系统:路径是/Users/你的用户名/Desktop/keys.p,代码示例:
      import pickle
      info = pickle.load(open("/Users/你的用户名/Desktop/keys.p", "rb"))
      

    记得把上面的“你的用户名”换成你自己的系统用户名哦。

  • 动态获取桌面路径(更灵活,推荐)
    硬编码用户名不太方便,换电脑就失效了。可以用Python的内置模块自动获取桌面路径:
    用pathlib(Python 3.4+推荐,语法更简洁):

    from pathlib import Path
    import pickle
    
    desktop_file = Path.home() / "Desktop" / "keys.p"
    info = pickle.load(open(desktop_file, "rb"))
    

    或者用os模块(兼容所有Python版本):

    import os
    import pickle
    
    desktop_file = os.path.join(os.path.expanduser("~"), "Desktop", "keys.p")
    info = pickle.load(open(desktop_file, "rb"))
    
  • 先确认文件的真实位置
    有时候可能是你记错了文件位置,或者文件名拼写错了:

    • 右键keys.p文件,查看“属性”(Windows)或“显示简介”(macOS),确认完整路径和文件名是否正确;
    • 注意系统是否隐藏了文件后缀名,比如实际文件名可能是keys.p.txt,但你看到的是keys.p,这也会导致找不到文件。
  • 切换工作目录到桌面
    先让Python切换到桌面目录,再直接打开文件名:

    import os
    import pickle
    
    # Windows系统示例
    os.chdir(r"C:\Users\你的用户名\Desktop")
    # macOS/Linux系统示例
    # os.chdir("/Users/你的用户名/Desktop")
    
    info = pickle.load(open("keys.p", "rb"))
    

内容的提问来源于stack exchange,提问作者Bosiff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:22:21