欢迎光临
我们一直在努力

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

这篇文章主要介绍“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__))
path2 = 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__)))
path3 = os.path.join(os.path.dirname(cur_dir), "test.txt")
print(path2)
print(path3)

输出:

E:\python\project\test.txt
E:\python\project\test.txt

注意:
只有当在脚本中执行的时候,os.path.abspath(file)才会起作用,因为该命令是获取的当前执行脚本的完整路径,如果在交互模式或者terminate 终端中运行会报没有__file__这个错误。

到此,关于“python怎么打印当前文件的绝对路径并解决打印为空的问题”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注云搜网网站,小编会继续努力为大家带来更多实用的文章!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。