Python获取当前脚本文件夹(Script)的绝对路径方法代码


Posted in Python onAugust 27, 2019

Python脚本有一个毛病,当使用相对路径时,被另一个不同目录下的py文件中导入时,会报找不到对应文件的问题。感觉是当前工作目录变成了导入py文件当前目录。如果你有配置文件的读取操作,然后都放在一个py文件中,而你又用的是相对路径,而且这个py文件在多个不同目录下的py文件中被导入,那就呵呵了。。。还是用绝对路径吧。

解决这个问题,可以用绝对路径。当然是自动的绝对路径,而不是每次都手动给前缀赋值,让脚本自动寻找当前文件的绝对路径。

此处分享在python下获取一个脚本的绝对路径的2种方式。

1、__file__变量

abs_file=__file__
print("abs path is %s" %(__file__))
abs_dir=abs_file[:abs_file.rfind("\\")]   # windows下用\\分隔路径,linux下用/分隔路径

简单直接,当前py文件的绝对目录就有了。首推此方式。

2、os+sys

import os
import sys
print("abs path is %s" %(os.path.abspath(sys.argv[0])))

在windows下sys.argv[0]直接取出的就是参数,如果执行命令传参用的是绝对路径取出的就是带绝对路径,如果传参用的是相对路径,就用得上前面的os.path.abspath()函数了。

以上就是全部实例内容,感谢大家的阅读和对三水点靠木的支持。

Python 相关文章推荐
Python 异常处理实例详解
Mar 12 Python
对于Python的Django框架部署的一些建议
Apr 09 Python
python实现自动登录人人网并采集信息的方法
Jun 28 Python
利用Tkinter和matplotlib两种方式画饼状图的实例
Nov 06 Python
python实现用户答题功能
Jan 17 Python
django进阶之cookie和session的使用示例
Aug 17 Python
python环境路径配置以及命令行运行脚本
Apr 02 Python
python自动化测试之DDT数据驱动的实现代码
Jul 23 Python
python装饰器代替set get方法实例
Dec 19 Python
Python 解码Base64 得到码流格式文本实例
Jan 09 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 Python
删除pycharm鼠标右键快捷键打开项目的操作
Jan 16 Python
python实现一个函数版的名片管理系统过程解析
Aug 27 #Python
python中下标和切片的使用方法解析
Aug 27 #Python
python使用if语句实现一个猜拳游戏详解
Aug 27 #Python
Python socket 套接字实现通信详解
Aug 27 #Python
python 使用pdfminer3k 读取PDF文档的例子
Aug 27 #Python
手写一个python迭代器过程详解
Aug 27 #Python
浅析Python语言自带的数据结构有哪些
Aug 27 #Python
You might like
星际争霸中的热键
2020/03/04 星际争霸
PHP 前加at符合@的作用解析
2015/07/31 PHP
php猜单词游戏
2015/09/29 PHP
PHP自带方法验证邮箱、URL、IP是否合法的函数
2016/12/08 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
2017/12/21 PHP
JavaScript 语法集锦 脚本之家基础推荐
2009/11/15 Javascript
javascript整除实现代码
2010/11/23 Javascript
jquery 合并内容相同的单元格(示例代码)
2013/12/13 Javascript
JS截取url中问号后面参数的值信息
2014/04/29 Javascript
javascript跨域原因以及解决方案分享
2015/04/08 Javascript
JavaScript中exec函数用法实例分析
2015/06/08 Javascript
jQuery Mobile中的button按钮组件基础使用教程
2016/05/23 Javascript
jQuery自定义图片缩放拖拽插件imageQ实现方法(附demo源码下载)
2016/05/27 Javascript
js学习阶段总结(必看篇)
2016/06/16 Javascript
JS实现中国公民身份证号码有效性验证
2017/02/20 Javascript
Centos6.8下Node.js安装教程
2017/05/12 Javascript
关于定制FileField中的上传文件名称问题
2017/08/22 Javascript
React Native 搭建开发环境的方法步骤
2017/10/30 Javascript
Angular4学习笔记router的简单使用
2018/03/30 Javascript
angularJs select绑定的model取不到值的解决方法
2018/10/08 Javascript
postman自定义函数实现 时间函数的思路详解
2019/04/17 Javascript
layer页面跳转,获取html子节点元素的值方法
2019/09/27 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
python基础教程之缩进介绍
2014/08/29 Python
详解Python 2.6 升级至 Python 2.7 的实践心得
2017/04/27 Python
Python解决pip install时出现的Could not fetch URL问题
2019/08/01 Python
Mybag美国/加拿大:英国奢华包包和名牌手袋网站
2020/02/16 全球购物
意大利辅助药品、药物和补品在线销售:FarmaEurope
2020/04/29 全球购物
QA工程师岗位职责
2013/11/20 职场文书
个性与发展自我评价
2014/02/11 职场文书
就业意向书范文
2014/04/01 职场文书
商务经理岗位职责
2014/07/30 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
财务会计求职信范文
2015/03/20 职场文书
2015年学校食堂工作总结
2015/04/22 职场文书
Win11无法安装更新补丁KB3045316怎么办 附KB3045316补丁修复教程
2022/08/14 数码科技