Python pycharm读取文件相对路径与绝对路径的方法

 更新时间:2023年12月04日 15:59:00   作者:爱犯错的智能体_1  
这篇文章主要给大家介绍了关于Python pycharm读取文件相对路径与绝对路径的方法,绝对路径就是文件的真正存在的路径,是指从硬盘的根目录(盘符)开始,进行一级级目录指向文件,相对路径就是以当前文件为基准进行一级级目录指向被引用的资源文件,需要的朋友可以参考下

1.绝对路径

要读取如图所示文件的相对路径:

方法1:直接根据文件路径手动读取

D:\PycharmProjects\pythonProject\torch_learning\test_path.py

方法2:os.path.abspath(path)获取

path = "test_path.py"               # path为文件的名称
print(os.path.abspath(papathth))    # 采用os.path.abspath方法获取绝对路径
 
# 代码结果如下:D:\PycharmProjects\pythonProject\torch_learning\read_data.py

2.绝对路径

比如我想从左图文件”test_path“访问右图"0013035.jpg"文件,采用相对路径:

1.获取当前文件的绝对路径:D:\PycharmProjects\pythonProject\torch_learning\test_path.py

2.获取访问文件的绝对路径:D:\PycharmProjects\pythonProject\torch_learning\dataset\train\ants\0013035.jpg

3.可以看出,要是想从”test_path.py“到"0031035.jpg"必须经过”torch_learning“的文件夹,相当于把它当作一个过渡文件夹

4.相对路径为:”./dataset/train/ants/0013035.jpg“

3.区分pycharm中的窗口运行程序的相对路径和控制台运行的路径

窗口运行程序的相对路径是针对此时运行的文件而言的

而控制台运行程序的相对路径是由当前你创建的虚拟环境所在的位置决定的。

比如我创建的虚拟环境的名称为”pythonProject1“,那么Python控制台的相对路径就是从此开始的。

附:在Python中以相对路径或者绝对路径来导入文件或者模块的方法

在调试代码的时候,程序一直提示没有该模块,一直很纳闷,因为我导入文件一直是用绝对路径进行导入的。按道理来讲是不会出现模块找不到的情况的。

最后仔细分析了整个代码的目录结构,才发现了问题。

下面依次来说明一下今天的情况

先看导入的代码:

在demo——mnist.py文件中执行以下两种导入操作
# 第一处
from gcforest.gcforest import GCForest
from gcforest.utils.config_utils import load_json
# 第二处
config = load_json("demo_mnist-ca.json") # 里面传入的是文件的位置,这个函数是读取配置文件的内容

然后看一下目录的结构

在此例中,demo_mnist,py为主文件。它第一处要导入的是它当前目录的父目录下的一个子目录中的一个目录中的文件。

所以以绝对路径导入这个文件就是 from lib.gcforest.gcforet import GCForest

以相对路径导入这个文件就是 from ..gcforest.gcforet import GCForest

第二处导入的是它统一个目录下的另一个文件,所以可以直接导入
所以修改的导入代码为:config = load_json("demo_mnist-ca.json")

总结

到此这篇关于Python pycharm读取文件相对路径与绝对路径的文章就介绍到这了,更多相关pycharm读取文件相对路径绝对路径内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python绕过图片滑动验证码实现爬取PTA所有题目功能 附源码

    python绕过图片滑动验证码实现爬取PTA所有题目功能 附源码

    这篇文章主要介绍了python绕过图片滑动验证码实现爬取PTA所有题目 附源码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • python 实现关联规则算法Apriori的示例

    python 实现关联规则算法Apriori的示例

    这篇文章主要介绍了python 实现关联规则算法Apriori的示例,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-09-09
  • Python标准库之多进程(multiprocessing包)介绍

    Python标准库之多进程(multiprocessing包)介绍

    这篇文章主要介绍了Python标准库之多进程(multiprocessing包)介绍,本文讲解了进程池、共享资源、共享内存、Manager等内容,需要的朋友可以参考下
    2014-11-11
  • Python 元类实例解析

    Python 元类实例解析

    这篇文章主要介绍了 Python 元类实例解析,此文的主要任务就是给大家彻底讲明白什么是元类,需要的朋友可以参考下
    2018-04-04
  • Python探索之SocketServer详解

    Python探索之SocketServer详解

    这篇文章主要介绍了Python探索之SocketServer详解,小编觉得还是比较不错的,这里分享给大家,供需要的朋友参考。
    2017-10-10
  • Python实现的简单计算器功能详解

    Python实现的简单计算器功能详解

    这篇文章主要介绍了Python实现的简单计算器功能,结合实例形式详细分析了Python实现计算器功能的具体步骤、相关操作技巧与注意事项,需要的朋友可以参考下
    2018-08-08
  • Python rindex()方法案例详解

    Python rindex()方法案例详解

    这篇文章主要介绍了Python rindex()方法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • Python项目管理工具Poetry使用示例详解

    Python项目管理工具Poetry使用示例详解

    这篇文章主要为大家介绍了Python项目管理工具Poetry使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • python中Pexpect的工作流程实例讲解

    python中Pexpect的工作流程实例讲解

    在本篇文章里小编给大家整理的是一篇关于python中Pexpect的工作流程实例讲解内容,有兴趣的朋友们可以学习下。
    2021-03-03
  • python3爬虫中引用Queue的实例讲解

    python3爬虫中引用Queue的实例讲解

    在本篇内容里小编给大家整理的是一篇关于python3爬虫中引用Queue的实例讲解内容,有兴趣的朋友们可以学习下。
    2020-11-11

最新评论