os.path.dirname(__file__)使用
os.path.dirname(__file__)使用
该测试脚本所在的位置:D:\第1层\第2层\第3层\第4层\第5层\test11.py
test11.py
- import os
- #该文件所在位置:D:\第1层\第2层\第3层\第4层\第5层\test11.py
- path1 = os.path.dirname(__file__)
- print(path1)#获取当前运行脚本的绝对路径
- path2 = os.path.dirname(os.path.dirname(__file__)) #
- print(path2)#获取当前运行脚本的绝对路径(去掉最后一个路径)
- path3 = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
- print(path3)#获取当前运行脚本的绝对路径(去掉最后2个路径)
- path4 = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(__file__))))
- print(path4)#获取当前运行脚本的绝对路径(去掉最后3个路径)
- path5 = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(__file__)))))
- print(path5)#获取当前运行脚本的绝对路径(去掉最后4个路径)
- path6 = os.__file__ #获取os所在的目录
- print(path6)
结果:
- C:\Python352\python.exe D:/第1层/第2层/第3层/第4层/第5层/test11.py
- D:/第1层/第2层/第3层/第4层/第5层
- D:/第1层/第2层/第3层/第4层
- D:/第1层/第2层/第3层
- D:/第1层/第2层
- D:/第1层
- C:\Python352\lib\os.py
- Process finished with exit code 0
解释:
http://blog.csdn.net/u011760056/article/details/46969883
os.path.dirname(__file__)返回脚本的路径,但是需要注意一下几点:
- 必须是实际存在的.py文件,如果在命令行执行,则会引发异常NameError: name '__file__' is not defined;
- 在运行的时候如果输入完整的执行的路径,则返回.py文件的全路径如:Python c:/test/test.py 则返回路径 c:/test ,如果是python test.py 则返回空;
- 结合os.path.abspath用,效果会好,如果大家看过一些python架构的代码的话,会发现经常有这样的组合:os.path.dirname(os.path.abspath(__file__)),os.path.abspath(__file__)返回的是.py文件的绝对路径。
这就是os.path.dirname(__file__)的用法,其主要总结起来有:
- 不要在命令行的形式来进行os.path.dirname(__file__)这种形式来使用这个函数;
- 结合os.path.abspath()使用
os.path.dirname(__file__)使用的更多相关文章
- python中os.path.dirname(__file__) 命令行 参数没有绝对路径导致数据库找不到
(1).当"print os.path.dirname(__file__)"所在脚本是以完整路径被运行的, 那么将输出该脚本所在的完整路径,比如: python d:/python ...
- python中的os.path.dirname(__file__)的使用
在编程时,我们要获取当前文件所在的路径,以适合所有的工程,建立相对路径. python的os.path.dirname(__file__)非常好用,建议大家使用: import os FILE = o ...
- Python os.path.dirname(__file__) 与 Python os.path.abspath(__file__) 与 os.system() 函数
Python os.path.dirname(__file__) 与 Python os.path.abspath(__file__) 的区别 os.path.abspath(__file__)返回 ...
- 转: Python中的os.path.dirname(__file__)
(1).当"print os.path.dirname(__file__)"所在脚本是以完整路径被运行的, 那么将输出该脚本所在的完整路径,比如: ...
- Python os.path.dirname(__file__) os.path.join(str,str)
Python os.path.dirname(__file__) Python os.path.join(str,str) (1).当"print os.path.dirname(__f ...
- Python——os.path.dirname(__file__) 与 os.path.join(str,str)
Python os.path.dirname(__file__) Python os.path.join(str,str) (1).当"print os.path.dirname(__f ...
- python中的os.path.dirname与os.path.dirname(__file__)的用法
python中的os.path.dirname的用法 os.path.dirname(path) 语法:os.path.dirname(path) 功能:去掉文件名,返回目录 如: print(os. ...
- os.path.dirname(__file__)
os.path.dirname(__file__) 返回脚本的路径 描述: 必须实际存在的.py文件,如果直接在命令行执行,则会引发异常NameError: name 'file' is not de ...
- os.path.dirname(__file__)使用、Python os.path.abspath(__file__)使用
python中的os.path.dirname(__file__)的使用 - CSDN博客https://blog.csdn.net/u011760056/article/details/469698 ...
随机推荐
- Spring集成quartz集群配置总结
1.spring-quartz.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE be ...
- mybatis错误总结
1:传递多个参数失败 Parameter 'username' not found. Available parameters are [0, 1, param1, param2] dao层错误写 ...
- Paramiko使用
1.下载安装 pycrypto-2.6.1.tar.gz (apt-get install python-dev) 解压,进入,python setup.py build[编译],python set ...
- Web攻防系列教程之 Cookie注入攻防实战
摘要:随着网络安全技术的发展,SQL注入作为一种很流行的攻击方式被越来越多的人所知晓.很多网站也都对SQL注入做了防护,许多网站管理员的做法就是添加一个防注入程序.这时我们用常规的手段去探测网站的SQ ...
- 蓝色的cms企业记账管理后台模板源码——后台
链接:http://pan.baidu.com/s/1bpxKGBP 密码:suda
- N-gram语言模型与马尔科夫假设关系(转)
1.从独立性假设到联合概率链朴素贝叶斯中使用的独立性假设为 P(x1,x2,x3,...,xn)=P(x1)P(x2)P(x3)...P(xn) 去掉独立性假设,有下面这个恒等式,即联合概率链规则 P ...
- mysql的一些规范
我司的mysql规范,值得牢记 一.禁止内容 表字段类型 不推荐使用enum,set,blob,text等类型 表中所有字段都不能为空,需要设置not null属性,可以给默认值 表的主键列值禁止被更 ...
- Linux系统调优及安全设置
1.关闭SELinux #临时关闭 setenforce 0 #永久关闭 vim /etc/selinux/config SELINUX=disabled 2.设定运行级别为3 #设定运行级别 vim ...
- centos 下单独安装mysql
https://www.cnblogs.com/running-mydream/p/4666094.html https://www.cnblogs.com/lzj0218/p/5724446.htm ...
- 构建基于TCP的应用层通信模型
各层的关系如下图,表述的是两个应用或CS间通信的过程: 通常使用TCP构建应用时,需要考虑传输层的通信协议,以便应用层能够正确识别消息请求.比如,一个请求的内容很长(如传文件),那肯定要分多次发送 ...