Python/Flask中with open结合绝对路径出现FileNotFoundError问题解析
错误原因解析
1. 相对路径的基准目录不符合预期
你使用abspath("text_files\config.txt")生成绝对路径时,abspath()函数是基于**当前工作目录(CWD)**来计算路径的,而非你的Flask脚本server.py所在的目录。从错误日志能看到,当前工作目录被设置为C:\Users\Tech4\,而你的脚本实际在C:\Users\Tech4\Desktop\python_server_test\下,这就导致生成的路径变成了C:\Users\Tech4\text_files\config.txt,这个位置的文件/目录显然不存在。
2. 父目录可能未创建(附加可能原因)
就算路径基准正确,如果text_files这个目录本身不存在,open()函数的'w'模式只能创建新文件,无法自动创建上级目录,同样会抛出FileNotFoundError。
内容的提问来源于stack exchange,提问作者Ronald Baker
相关产品推荐
相关产品推荐

