打开当前工作目录外文件报错:FileNotFoundError问题求助
问题原因
你已经把test.txt移到当前工作目录,但代码里还在访问原来的C:/Users/xxxx/data/路径,系统找不到这个路径下的文件,所以抛出FileNotFoundError。另外代码里还有个冗余操作:Path对象自带read_text()方法,不需要先调用open()。
解决办法
有两种简单的处理方式:
- 直接读取当前目录的文件
既然文件已经在脚本的工作目录,直接简化代码:from pathlib import Path print(Path("test.txt").read_text()) - 确认当前工作目录后拼接路径
先确认脚本的当前工作目录,再拼接文件名:from pathlib import Path # 打印当前工作目录,核对文件位置 print("当前工作目录:", Path.cwd()) file_to_open = Path.cwd() / "test.txt" print(file_to_open.read_text())
额外提示
- 避免冗余操作:
read_text()会自动处理文件的打开和关闭,原代码里的f = open(file_to_open)完全没必要,还可能导致资源泄漏。 - 提前检查文件是否存在:可以用
exists()方法提前排查问题:from pathlib import Path file_to_open = Path("test.txt") if file_to_open.exists(): print(file_to_open.read_text()) else: print(f"找不到文件:{file_to_open}")
内容的提问来源于stack exchange,提问作者Jacob
相关产品推荐
相关产品推荐

