常常用python来写日志,有时候一忽略,获取文件的路径是工做路径,并不是绝对路径,致使各类错误,这里记录一下,方便之后查阅。python
一、获取工做路径ide
#!/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“code
因此记录日志等,不能采用os.getcwd()utf-8
二、获取脚本绝对路径get
#!/usr/bin/python # -*- coding: utf-8 -*- import os filename = os.path.realpath(__file__)#C:\py\01.py print os.path.dirname(filename)#C:\py\
这时候,不管是当前目录仍是其它目录执行该脚本,都可获取其正确的绝对路径。import
经常使用拼接路径,能够这样写coding
os.path.join(os.path.dirname(os.path.realpath(__file__)), 'log')file