You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Python中文件存在却触发FileNotFoundError的解决咨询

Python中文件存在却触发FileNotFoundError的解决咨询

嘿,我来帮你排查这个问题!从你给出的代码和错误信息来看,问题其实很明确,咱们一步步来拆解:

首先看你的代码片段:

file_path = "C:/Users/user/Desktop/"
filename = "Extremely.Wicked.Shockingly.txt" 

但报错的代码行是:

with open(os.path.join(file_path, "Extremely.Wicked.Shockingly.srt"), "r") as f:

错误信息显示找不到的文件是:

FileNotFoundError: [Errno 2] No such file or directory: 'C:/Users/user/Desktop/Extremely.Wicked.Shockingly.srt'

核心问题:文件名后缀不匹配

你定义的filename变量是.txt后缀的文件,但代码里硬编码打开的是.srt后缀的文件!而你实际存在的是.txt文件,自然找不到.srt的那个。

具体解决方法

  • 方法一:统一文件名和代码中的后缀
    要么把你的文本文件重命名为Extremely.Wicked.Shockingly.srt,要么把代码里的文件名改成和实际一致的.txt版本。

  • 方法二:使用变量代替硬编码(更推荐)
    既然你已经定义了filename变量,直接在open函数里用上它,这样后续修改文件名时只需要改一处,不容易出错:

    with open(os.path.join(file_path, filename), "r") as f:
    

额外排查点(如果上述方法没解决)

  1. 确认文件的真实路径:有时候桌面文件可能同步到OneDrive,实际路径会变成C:/Users/user/OneDrive/Desktop/,右键点击文件→属性,查看“位置”栏确认真实路径是否和代码里的file_path一致。
  2. 检查文件名的大小写:虽然Windows系统文件名不区分大小写,但极少数情况下如果文件名有大小写差异(比如实际是extremely.wicked...而代码里是Extremely.Wicked...),也可能导致识别问题,建议保持完全一致。
  3. 检查是否有隐藏后缀:Windows默认会隐藏已知文件的后缀,比如你看到的Extremely.Wicked.Shockingly.txt可能实际是Extremely.Wicked.Shockingly.txt.txt(因为后缀被隐藏了)。可以在文件夹选项里开启“显示文件扩展名”来确认。

备注:内容来源于stack exchange,提问作者sara mohebtash

火山引擎 最新活动