5

有一个文件a.py

位置是/home/user/projects/project1/xxx/a.py

如果我打电话os.getcwd(),它会给我/home/user/projects/project1/xxx/。但我想达到/home/user/projects/project1。我如何在 Python 中做到这一点?

编辑:我想我必须更清楚。我想要这个用于我的 Django 项目。

我在我的 settings.py 中使用这些代码:

PROJECT_PATH = os.path.abspath(os.path.dirname(__file__))

然后我使用休闲代码来指定我的静态文件夹在哪里。:

os.path.join(PROJECT_PATH,'statics'),

我的 settings.py 文件位于:/home/user/projects/project1/xxx/settings.py

我的静态文件夹与settings.py.

现在我想将此文件夹移动到/home/user/projects/project1

我应该如何处理 settings.py 中的代码

谢谢你

4

2 回答 2

13
from os.path import dirname

print(dirname(dirname(__file__)))

每次调用dirname它都会为您提供父目录。根据需要多次调用。

或者,您可以执行以下操作:

normpath(join(path1, '..', '..'))
于 2012-10-15T11:42:09.467 回答
9
>>> import os
>>> os.getcwd()
'/tmp/test'
>>> os.chdir('..')
>>> os.getcwd()
'/tmp'
>>> 

点点 ( ..) 表示父目录。因为相对路径名指定了从当前目录开始的路径。

请参阅 的文档os.chdir

于 2012-10-15T11:41:10.837 回答