
python打印当前文件的绝对路径并解决打印为空的问题

目录
- python打印当前文件的绝对路径并解决打印为空
- 补充:python中对文件路径的获取
python打印当前文件的绝对路径并解决打印为空
获取当前文件所在路径主要使用os.path.dirname(os.path.abspath(__file__))
:
import os file_path = os.path.dirname(os.path.abspath(__file__)) print(file_path)
不能使用下面代码,在有些情况下路径会是空
os.path.dirname(__file__)
示例:得到相对位置的文件路径
上级文件夹下的文件,比如config.yaml
文件的路径可以表示为:os.path.dirname(os.path.abspath(__file__)) + "/../conf/config.yaml"
|_ conf |_ config.yaml |_src |_代码 # 当前位置
补充:python中对文件路径的获取
1、获取当前文件的绝对路径
import os cur_path = os.path.abspath(__file__) print(cur_path)
输出:E:\python\project\test\path_test.py
2、获取当前文件的所在目录
import os cur_dir = os.path.dirname(os.path.abspath(__file__)) # 上级目录 print(cur_dir)
输出:E:\python\project\test
3、获取当前文件所在目录的上一级目录
import os cur_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 上级目录 print(cur_dir)
输出:E:\python\project
4、获取指定文件的路径(例如想获得project文件夹下的test.txt文件路径)
import os # 法一 cur_dir1 = os.path.dirname(os.path.abspath(__file__)) path1 = os.path.join(os.path.abspath(cur_dir + os.path.sep + ".."), "test.txt") # 法二 cur_dir2 = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) path2 = os.path.join(os.path.dirname(cur_dir), "test.txt") print(path1) print(path2)
输出:
E:\python\project\test.txt
E:\python\project\test.txt
注意:
只有当在脚本中执行的时候,os.path.abspath(file)才会起作用,因为该命令是获取的当前执行脚本的完整路径,如果在交互模式或者terminate 终端中运行会报没有__file__这个错误。
到此这篇关于python打印当前文件的绝对路径,并解决打印为空的文章就介绍到这了,更多相关python打印当前文件的绝对路径内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
详解在Python中以绝对路径或者相对路径导入文件的方法
1.在Python中以相对路径或者绝对路径来导入文件或者模块的方法 今天在调试代码的时候,程序一直提示没有该模块,一直很纳闷,因为我导入文件一直是用绝对路径进行导入的.按道理来讲是不会出现模块找不到的情况的. 最后仔细分析了整个代码的目录结构,才发现了问题. 下面依次来说明一下今天的情况 先看导入的代码: 在demo--mnist.py文件中执行以下两种导入操作 # 第一处 from gcforest.gcforest import GCForest from gcforest.utils.co
-
python文件读取和导包的绝对路径、相对路径详解
目录 一.文件读取的绝对路径和相对路径 二.package的绝对路径及相对路径导入 2.1 导包以绝对路径导入 2.2 导包以相对路径导入 三.运行脚本的当前工作路径和绝对路径 总结 文件目录层级 一.文件读取的绝对路径和相对路径 用相对路径和绝对路径读取上一层目录的文件.下一层目录的文件及读取同层级的文件. # @File : platform.py.py """1.绝对路径读取文件""" with open(r"C:\Users\c
-
python文件绝对路径写法介绍(windows)
python在描述路径时有两种方式: 'd:\\a.txt',转义的方式 r'd:\a.txt',声明字符串不需要转义 (使用raw string,也就是在string'前面加r,告诉python不需要转义) 推荐使用此写法"/",可以避免很多异常: C:/Users/Administrator/Desktop/python/t1.txt 以上这篇python文件绝对路径写法介绍(windows)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
Python获取当前脚本文件夹(Script)的绝对路径方法代码
Python脚本有一个毛病,当使用相对路径时,被另一个不同目录下的py文件中导入时,会报找不到对应文件的问题.感觉是当前工作目录变成了导入py文件当前目录.如果你有配置文件的读取操作,然后都放在一个py文件中,而你又用的是相对路径,而且这个py文件在多个不同目录下的py文件中被导入,那就呵呵了...还是用绝对路径吧. 解决这个问题,可以用绝对路径.当然是自动的绝对路径,而不是每次都手动给前缀赋值,让脚本自动寻找当前文件的绝对路径. 此处分享在python下获取一个脚本的绝对路径的2种方式. 1.
-
Python实现通过文件路径获取文件hash值的方法
本文实例讲述了Python实现通过文件路径获取文件hash值的方法.分享给大家供大家参考,具体如下: import hashlib import os,sys def CalcSha1(filepath): with open(filepath,'rb') as f: sha1obj = hashlib.sha1() sha1obj.update(f.read()) hash = sha1obj.hexdigest() print(hash) return hash def CalcMD5(fi
-
python 扩展print打印文件路径和当前时间信息的实例代码
pinrt函数我们经常使用,但是有时候python自带的print函数打印的信息不够详细,我们可以扩展一下,打印更多的信息,例如程序文件绝对路径.当前日期时间.消息等等.这里我参考了ydf网友写的猴子补丁(monkey patch)法. # -*- coding: utf-8 -*- # @Author : ydf # @Time : 2019/5/9 19:02 """ 不直接给print打补丁,自己重新赋值. """ import sys i
-
python 递归遍历文件夹,并打印满足条件的文件路径实例
题目:利用协程来遍历目录下,所有子文件及子文件夹下的文件是否含有某个字段值,并打印满足条件的文件的绝对路径. #!/user/bin/env python # -*- coding:utf-8 -*- #grep -rl "python" D:\devtools\workspace\python\aaa import os def init(func): def wrapper(*args,**kwargs): res=func(*args,**kwargs) res.send(Non
-
python文件名和文件路径操作实例
Readme: 在日常工作中,我们常常涉及到有关文件名和文件路径的操作,在python里的os标准模块为我们提供了文件操作的各类函数,本文将分别介绍"获得当前路径""获得当前路径下的所有文件和文件夹,"删除文件","删除目录/多个目录","检查文件/文件路径","检查文件路径是否存在","分离文件路径及文件名","分离文件扩展名","得到文件名&q
-
分析Python读取文件时的路径问题
Python在读取文件内容时的路径问题,值得深究一下.我想讨论的重点还是在绝对路径上面.在这之前我们先看一下 1:相对路径 这张图演示了在相对路径下寻找查找指定文件. open('相对路径演示'\'相对路径示例'.txt)打开的是相对当前运行的程序所在目录. 而我当前运行的程序相对位置在桌面. 所以直接print(lines) 可以看到这个结果 2:绝对路径. 绝对路径的查找方法就不演示了,相信每个人都会找到.但是我想讨论的是几个关于路径中的编码问题,相信这对初学者们有很大的帮助. 2.1:你
-
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
默认情况下,tarfile 打包成的 tar.gz 文件会带绝对路径,而很多情况下,我们需要的是相对打包文件夹的路径. 代码: <pre name="code" class="python"><span style="font-size:18px;">import tarfile tmp_tar_dir = "/home" file_name = "test.tar.gz" tmp_
-
python获取当前文件路径以及父文件路径的方法
#当前文件的路径 pwd = os.getcwd() #当前文件的父路径 father_path=os.path.abspath(os.path.dirname(pwd)+os.path.sep+".") #当前文件的前两级目录 grader_father=os.path.abspath(os.path.dirname(pwd)+os.path.sep+"..") 追加部分代码实例 def TestPrtPwd(self): print("获取当前文件路径
-
Python 解决OPEN读文件报错 ,路径以及r的问题
Python 中 'unicodeescape' codec can't decode bytes in position XXX: trun错误解决方案 背景描述 今天在运用Python pillow模块处理图片时遇到一个错误 SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape 刚开始以为是图片名字有中文,不识别,于是
-
Python如何获取文件路径/目录
一.获取文件路径实现 1.1 获取当前文件路径 import os current_file_path = __file__ print(f"current_file_path: {current_file_path}") __file__变量其实有个问题,当文件被是被调用文件时__file__总是文件的绝对路径:但当文件是直接被执行的文件时,__file__并不总是文件的绝对路径,而是你执行该文件时给python传的路径.比如你是python xxx/yyy.py形式执行的,那么此时
-
python 中open文件路径的选择问题解析
一.问题描述 python 中使用open打开某个文件写入时,往往会发现需要写入的文件不在同级目录下.这样就需要根据文件的路径来找到并打开. 但往往有时绝对路径和相对路径,写入不正确就会打开失败. 二.解决方法 1.使用绝对路径 错误方法: 修改后的: 如果代表的是windows文件路径,则使用斜杆/和反斜杠\是一样的:如果代表的是网络文件路径,则必须使用 斜杆/ . 但是我不是很喜欢使用绝对路径,推荐使用相对路径. 2.使用相对路径 错误方法: 修改后的: 因为是处于非同级目录,所以需要在文件
-
Python字符串和文件操作常用函数分析
本文实例分析了Python字符串和文件操作常用函数.分享给大家供大家参考.具体如下: # -*- coding: UTF-8 -*- ''' Created on 2010-12-27 @author: sumory ''' import itertools def a_containsAnyOf_b(seq,aset): '''判断seq中是否含有aset里的一个或者多个项 seq可以是字符串或者列表 aset应该是字符串或者列表''' for item in itertools.ifilte
随机推荐
- VBS中InStrRev函数的第三个参数(Start)使用注意事项
- Windows下bat批处理脚本使用telnet批量检测远程端口小记
- 浅谈选择结构if语句和switch语句的区别
- ASP.Net全局变量的设置和读取方法
- javascript实现倒计时跳转页面
- 详解JavaScript中基于原型prototype的继承特性
- 使用coffeescript编写node.js项目的方法汇总
- [PHP]实用函数4
- PHP 传输会话curl函数的实例详解
- Jsp真分页实例---分页
- 通过SQL语句来备份,还原数据库
- javascript打印输出json实例
- PHP结合jQuery实现的评论顶、踩功能
- 让 FCKeditor 支持多用户Web环境(以PHP为例)
- 在网页中控制wmplayer播放器
- Shell脚本实现自动输入密码登录服务器
- SQLServer Execpt和not in 性能区别
- 我教你学之注册表系统外观修改实例(三)
- Session 失效的原因汇总及解决丢失办法
- Ehcache简介_动力节点Java学院整理
其他
- java在head中传参
- el-table变化筛选条件
- python缺失值替换中位数
- js操作word 动态生成
- bootstrap 模态框 点击确定按钮事件
- vue table 行值相同合并
- jar包中的bean和项目冲突
- 输入字符串求出所有组合java
- 最小生成树能解决排序问题么
- vue3 项目本地打包找不到文件
- maven-clean-plugin 导入失败
- 获取当前点击元素的data属性值
- mybatisplus多对多添加
- RocketMQTemplate发送消息
- js控制li标签个数
- retrbinary() 显示文件下载进度
- 如何用vbs编写一个游戏
- python下载安装教程3.4.4
- nacos 报错 访问不了mysql
- 动态关闭layui switch