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根据路径导入模块的方法
Sep 30 Python
python中sys.argv参数用法实例分析
May 20 Python
Python 包含汉字的文件读写之每行末尾加上特定字符
Dec 12 Python
浅谈Python中range和xrange的区别
Dec 20 Python
解决python字典对值(值为列表)赋值出现重复的问题
Jan 20 Python
说说如何遍历Python列表的方法示例
Feb 11 Python
python基础知识(一)变量与简单数据类型详解
Apr 17 Python
Ubuntu16.04安装python3.6.5步骤详解
Jan 10 Python
解决 jupyter notebook 回车换两行问题
Apr 15 Python
python多线程实现同时执行两个while循环的操作
May 02 Python
Python是什么 Python的用处
May 26 Python
python 实现简易的记事本
Nov 30 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
PHP伪造referer实例代码
2008/09/20 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
使用纯php代码实现页面伪静态的方法
2015/07/25 PHP
php让json_encode不自动转义斜杠“/”的方法
2020/04/27 PHP
JS操作select下拉框动态变动(创建/删除/获取)
2013/06/02 Javascript
node.js中的fs.stat方法使用说明
2014/12/16 Javascript
javascript实现textarea中tab键的缩排处理方法
2015/06/26 Javascript
js实现带有介绍的Select列表菜单实例
2015/08/18 Javascript
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
javascript特殊日历控件分享
2016/03/07 Javascript
浅谈JavaScript对象与继承
2016/07/10 Javascript
AngularJS实现与Java Web服务器交互操作示例【附demo源码下载】
2016/11/02 Javascript
详解Js中的模块化是如何实现的
2017/10/18 Javascript
Vue修改mint-ui默认样式的方法
2018/02/03 Javascript
js实现各浏览器全屏代码实例
2018/07/03 Javascript
JS实现头条新闻的经典轮播图效果示例
2019/01/30 Javascript
了解在JavaScript中将值转换为字符串的5种方法
2019/06/06 Javascript
ES6中定义类和对象的方法示例
2019/07/31 Javascript
js实现点击图片在屏幕中间弹出放大效果
2019/09/11 Javascript
p5.js临摹动态图形实现方法详解
2019/10/23 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
2019/11/26 jQuery
关于Node.js中频繁修改代码重启服务器的问题
2020/10/15 Javascript
python判断windows隐藏文件的方法
2014/03/21 Python
Python3使用requests包抓取并保存网页源码的方法
2016/03/15 Python
python利用Guetzli批量压缩图片
2017/03/23 Python
python爬取m3u8连接的视频
2018/02/28 Python
Python实现的当前时间多加一天、一小时、一分钟操作示例
2018/05/21 Python
python爬虫之urllib,伪装,超时设置,异常处理的方法
2018/12/19 Python
Django如何实现上传图片功能
2019/08/16 Python
Python queue队列原理与应用案例分析
2019/09/27 Python
Book Depository澳大利亚:世界领先的专业在线书店之一
2018/12/27 全球购物
PHP如何防止SQL注入
2014/05/03 面试题
数控技术与应用毕业生自荐信
2013/09/24 职场文书
女性健康知识讲座主持词
2015/07/04 职场文书
《法国号》教学反思
2016/02/22 职场文书
Python利用folium实现地图可视化
2021/05/23 Python