2

我想获取文件的父目录。此代码不起作用:

projectRoot = os.path.dirname(os.pardir(os.path.abspath(__file__)))

怎么了?

(我正在开发一个 django 应用程序,并在我的应用程序的设置文件中使用此变量)

谢谢。

罗曼

4

3 回答 3

5

您可以使用访问父目录..

import os
os.path.join(os.path.dirname(__file__), os.pardir)

或者:

import os
split_limit = 1 if os.path.isdir(__file__) else 0
parent_dir = os.path.abspath(__file__).rsplit(os.path.sep, split_limit)[0]
于 2013-04-10T11:54:12.280 回答
1

就这么简单:

import os
def get_parent_dir(file_path):
    return os.path.dirname(file_path)

要获取正在运行的脚本的 file_path,您可以这样做:

import sys
file_path = sys.argv[0]
于 2013-04-10T11:55:36.333 回答
0

在我们的 django 项目中,我们使用下一个结构:我们有 prodaction_settings.py,其中放置了 prodaction 服务器和所有变量的设置。在文件 settings.py 中的本地计算机上

from os.path import dirname, abspath, join
TEST_DIR = dirname(abspath(__file__))
from production_settings import *

使用模板添加本地文件夹:

TEMPLATE_DIRS = (
    join(TEST_DIR, 'tmpl'), 
)
于 2013-04-10T12:06:01.883 回答