python3中 os.path.realpath(__file__) 的使用

os.path.realpath

获取当前执行脚本的绝对路径。

os.path.realpath(__file__)

realpath() 获得的是该方法所在的脚本的路径

os.path.dirname(os.path.realname(__file__))获取的__file__所在脚本的路径,也就是fileName.py的路径

而os.getcwd()获取的当前最外层调用的脚本路径,即fileName所在的目录也可描述为起始的执行目录,A调用B,起始的是A,那么获取的就是A所在的目录路径。

方法补充说明:

os.path.dirname():去掉脚本的文件名,返回目录。

os.path.dirname(os,path.realname(__file__)):指的是,获得你刚才所引用的模块 所在的绝对路径,__file__为内置属性。 

用__file__ 来获得脚本所在的路径是比较方便的,但这可能得到的是一个相对路径,比如在脚本test.py中写入:

#!/usr/bin/env python
print __file__

按相对路径./test.py来执行,则打印得到的是相对路径,
按绝对路径执行则得到的是绝对路径。
而按用户目录来执行(~/practice/test.py),则得到的也是绝对路径(~被展开)

所以为了得到绝对路径,我们需要 os.path.realpath(__file__)。

print( __file__)
D:/python/file/Demo/practice/test.py

你可能感兴趣的:(函数)