gpt4 book ai didi

python - 在 Django 应用程序中打开文件

转载 作者:IT老高 更新时间:2023-10-28 21:08:12 25 4
gpt4 key购买 nike

我想使用 open() 从 Django 应用程序打开文件.问题是 open()似乎使用了我从中运行 runserver 的任何目录命令作为根。

例如如果我像这样从名为 foo 的目录运行服务器

$pwd
/Users/foo
$python myapp/manage.py runserver

open()使用 foo作为根目录。

如果我这样做

$cd myapp
$pwd
/Users/foo/myapp
$python manage.py runserver

myapp将是根。

假设我的文件夹结构如下所示

foo/myapp/anotherapp

我希望能够打开位于 foo/myapp/anotherapp 的文件来自同样位于 foo/myapp/anotherapp 的脚本简单地说

file = open('./baz.txt')

现在,取决于我从哪里运行服务器,我不得不说

file = open('./myapp/anotherapp/baz.txt')

file = open('./anotherapp/baz.txt')

最佳答案

解决方案已在 Favorite Django Tips&Tricks 中描述。问题。解决方法如下:

import os
module_dir = os.path.dirname(__file__) # get current directory
file_path = os.path.join(module_dir, 'baz.txt')

这正是你提到的。

附言。请不要覆盖 file 变量,它是 one of the builtins .

关于python - 在 Django 应用程序中打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9711255/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com