【发布时间】:2025-12-21 13:00:07
【问题描述】:
我正在开发一个 Django 项目,我想在其中替换服务器上的文件。一种方法是如果文件名已经存在则删除文件并将新文件保存在其位置。
我的问题是我的以 /data.xlsx 结尾的文件路径被认为是一个目录。在 python 中,os.isfile(path) 返回 false,os.isdir(path) 返回 true,尽管路径是这样的:
path = os.path.normpath(os.path.join(settings.MEDIA_ROOT, name)).replace('\\', '/')
返回类似
"G:/username/path/to/django/project/static/data/data.xlsx"
os.remove(path) 返回一个 OSError,因为 path 不是文件路径。我检查了一下,我拥有这个文件 (0777) 的所有权限。
我不知道如何让 python 明白这是一个 Excel 文件而不是一个目录。有人能帮我吗?我没有任何调试想法。
提前致谢!
【问题讨论】:
标签: python path directory delete-file