我有一个目录结构如下
/home/damon/dev/python/misc/path/
/project/mycode.py
/app/templates/
Run Code Online (Sandbox Code Playgroud)
我需要从mycode.py获取模板文件夹的绝对路径
我试着写mycode.py为
import os
if __name__=='__main__':
PRJ_FLDR=os.path.dirname(os.path.abspath(__file__))
print 'PRJ_FLDR=',PRJ_FLDR
apptemplates = os.path.join(PRJ_FLDR,'../app/templates')
print 'apptemplates=',apptemplates
Run Code Online (Sandbox Code Playgroud)
我希望apptemplates是
/home/damon/dev/python/misc/path/app/templates
Run Code Online (Sandbox Code Playgroud)
但我越来越
/home/damon/dev/python/misc/path/project/../app/templates
Run Code Online (Sandbox Code Playgroud)
如何获得正确的路径?
这条道路是正确的,试试吧。但是,如果您想删除多余的“ project /../”部分,请使用os.path.normpath
os.path.normpath(path)标准化路径名。这会使多余的分隔符和上级引用崩溃,从而使A // B,A / B /,A /./ B和A / foo /../ B都变为A / B。
http://docs.python.org/2/library/os.path.html#os.path.normpath
| 归档时间: |
|
| 查看次数: |
1042 次 |
| 最近记录: |