文件未找到问题求助:从PyCharm切换至IDLE后读取文件失败
解决Windows下IDLE中
os.path.getmtime的文件未找到问题 刚从PyCharm转用IDLE就碰到这种路径问题确实头疼,我帮你一步步排查解决:
1. 先确认路径本身是否正确
报错里说找不到C:\\Users\\AUser\\Desktop\\test.txt,先别急着改代码,先手动验证路径:
- 打开文件资源管理器,把这个路径直接粘贴到地址栏回车,看看能不能找到
test.txt - 重点检查:你的Windows用户名真的是
AUser吗?很多人会把实际用户名写错,比如带空格的名字(比如Li Ming)或者拼写错误,这是最常见的坑
2. 用动态路径替代硬编码(推荐)
手动写绝对路径很容易出错,尤其是用户名有特殊字符或空格的情况,用Python内置方法动态获取桌面路径更靠谱:
方法一:用os.path.expanduser获取用户目录
import time import os # 动态获取当前用户的桌面路径,不用硬写用户名 desktop_path = os.path.join(os.path.expanduser("~"), "Desktop") file_path = os.path.join(desktop_path, "test.txt") try: current_time = os.path.getmtime(file_path) print(f"文件最后修改时间: {current_time}") except FileNotFoundError: print(f"提示:找不到文件,请确认 {file_path} 是否存在")
方法二:用pathlib(Python3.4+更简洁的写法)
import time from pathlib import Path # 直接通过Path.home()获取用户目录,拼接桌面路径 desktop_path = Path.home() / "Desktop" file_path = desktop_path / "test.txt" try: current_time = file_path.stat().st_mtime print(f"文件最后修改时间: {current_time}") except FileNotFoundError: print(f"提示:找不到文件,请确认 {file_path} 是否存在")
3. 检查IDLE的工作目录
PyCharm默认会把脚本所在文件夹设为工作目录,但IDLE的默认工作目录可能不是你脚本所在的位置。可以先打印当前工作目录确认:
import os print("当前IDLE工作目录:", os.getcwd())
如果test.txt不在这个目录下,要么用绝对路径,要么先切换工作目录:
os.chdir("C:/Users/AUser/Desktop") # 切换到桌面目录
4. 关于r前缀和Unicode错误的说明
你去掉r前缀出现Unicode错误是正常的——因为Windows路径里的\在普通字符串里是转义字符,比如\U会被识别为Unicode转义序列。加r前缀(原始字符串)是正确的做法,但前提是路径拼写本身没问题。如果路径里有非ASCII字符,记得把你的Python脚本保存为UTF-8编码(IDLE默认就是UTF-8,不确定的话可以在「文件」→「另存为」里确认编码选项)
内容的提问来源于stack exchange,提问作者user2469112
相关产品推荐
相关产品推荐

