python获取当前文件的路径

经常用python来写日志,有时候一忽略,获取文件的路径是工作路径,并非绝对路径,导致各种错误,这里记录一下,方便以后查阅。

1、获取工作路径

#!/usr/bin/python
# -*- coding: utf-8 -*-

import os

print os.getcwd() 

若在当前目录下执行该脚本,如ide里直接执行,会输出 C:\py\01.py

若在其它环境下执行,如python \py\01.py,其输出不是C:\py\01.py,而是”当前工作目录\01.py“

所以记录日志等,不能采用os.getcwd()

2、获取脚本绝对路径

#!/usr/bin/python
# -*- coding: utf-8 -*-

import os

filename = os.path.realpath(__file__)#C:\py\01.py
print os.path.dirname(filename)#C:\py\

这时候,无论是当前目录还是其它目录执行该脚本,均可获取其正确的绝对路径。

常用拼接路径,可以这样写

os.path.join(os.path.dirname(os.path.realpath(__file__)), 'log')

猜你喜欢

转载自my.oschina.net/u/3403514/blog/1550084