Python __file__和目录

__file__

__file__ 直接在目录里面执行,结果显示当前文件, 不管在哪个文件中引用, 都返回该代码所在文件路径 (在Pycharm中会显示绝对路径) , 此变量在ipython中不可用
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__)

'''版权声明:本文为CSDN博主「白清羽」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gufenchen/article/details/90552370'''

os.getcwd()

os.getcwd()获得脚本路径,可以理解为 当前的执行目录,完全 与py文件所在的位置无关(比如在model A import model B)
os.path.realpath(__file__)获得该文件所在的路径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值