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

 更新时间:2023年03月11日 15:23:26   作者:呆萌的代Ma  
这篇文章主要介绍了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定义函数功能与用法实例详解

    Python定义函数功能与用法实例详解

    这篇文章主要介绍了Python定义函数功能与用法,结合实例形式详细分析了Python函数的定义、参数、返回值、作用域等相关概念、原理及使用方法,需要的朋友可以参考下
    2019-04-04
  • 浅谈Python数据处理csv的应用小结

    浅谈Python数据处理csv的应用小结

    这篇文章主要介绍了Python数据处理csv的简单应用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • python常用数据重复项处理方法

    python常用数据重复项处理方法

    在本篇文章里小编给大家整理的是关于python常用数据重复项处理方法,需要的朋友们参考下。
    2019-11-11
  • python实现读取excel表格详解方法

    python实现读取excel表格详解方法

    python操作excel主要用到xlrd和xlwt两个库,xlrd读取表格数据,支持xlsx和xls格式的excel表格;xlwt写入excel表格数据
    2022-07-07
  • python定向爬虫校园论坛帖子信息

    python定向爬虫校园论坛帖子信息

    这篇文章主要为大家详细介绍了Python定向爬虫校园论坛帖子信息的相关方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • Python之Scrapy爬虫框架安装及简单使用详解

    Python之Scrapy爬虫框架安装及简单使用详解

    这篇文章主要介绍了Python之Scrapy爬虫框架安装及简单使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • Python %r和%s区别代码实例解析

    Python %r和%s区别代码实例解析

    这篇文章主要介绍了Python %r和%s区别代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Python利用pythonping处理ping的示例详解

    Python利用pythonping处理ping的示例详解

    ping (Packet Internet Groper)是一种因特网包探索器,用于测试网络连接量的程序 。Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令。本文将利用pythonpin实现gping的处理,需要的可以参考一下
    2022-11-11
  • Python爬虫实现简单的爬取有道翻译功能示例

    Python爬虫实现简单的爬取有道翻译功能示例

    这篇文章主要介绍了Python爬虫实现简单的爬取有道翻译功能,结合实例形式分析了Python基于urllib库实现的爬虫爬取有道翻译相关定义与数据交互功能操作技巧,需要的朋友可以参考下
    2018-07-07
  • Python中关于面向对象中继承的详细讲解

    Python中关于面向对象中继承的详细讲解

    面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展
    2021-10-10

最新评论