Python如何读取相对路径文件

 更新时间:2023年03月02日 09:13:27   作者:寸草心2130  
这篇文章主要介绍了Python如何读取相对路径文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Python读取相对路径文件

例如下图目录结构:

在这里插入图片描述

第一种情况

1)xxx.py想要打开a.txt,使用相对路径,有如下两种方式:

思路:

xxx.py想打开的是b_file下的文件,XXX.py和b_file都在文件目录之下,两者是同级目录,因此操作就是在当前目录向下搜索,因此就可以很容易理解下面的意思了

特别提示:… \是错误的,打开的是上级目录

with open(r"b_file\a.txt","r") as file:
with open(r".\b_file\a.txtx", "r") as file:

2)ab.py尝试打开b_file下的a.txt,应该怎么写:

思路,首先要定位到上级目录,在上级目录下找到b_file下的.TXT

    with open(r"..\b_file\aa.txt", "r") as f:
        print(f.read())

最后:如果想要使用绝对路径也很简单:

xxx.py打开b_file下的a.txt中,我们可以使用OS库,获取到xxx.py的当前路径,再然后通过组合的方式电子杂志到绝对路径。

当然还可以分成两部,使用os.path.join(路径,PATH1)进行两个路径的自动合并,去获取到完整的路径,也是可行的。

import os
path = os.getcwd()#获取当前路径
 
with open(path+".\b_file\a.txt", "r") as file:
import os
path = os.getcwd()
a_path = os.path.join(path, "b_file/a.txt")
print(a_path)

从下级目录向上级目录合并,也是可以使用加入方法实现的

os.path.abspath(os.path.join(path, ".."))

python读取文件路径失败的原因

今天用tensorflow读取csv文件,一直读取失败,后来发现是因为文件名的路径问题

例如:

DATA_FILE = ['F:\vscode\kiwi.csv']

这个时候出错,是因为系统将‘\’解释为了转义字符串,即便是放在当前路径下,只写文件名还是会失败。

不清楚为什么vscode软件无法识别当前路径。总之使用正确的绝对路径就行了。

为了避免出现转义字符导致文件地址解析出错,我们可以使用双斜杠,或者反方向的斜杠。

DATA_FILE = ['F:\\vscode\\kiwi.csv']
DATA_FILE = ['F:/vscode/kiwi.csv']

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python开发.exe小工具的详细步骤

    Python开发.exe小工具的详细步骤

    这篇文章主要介绍了Python开发.exe小工具的详细步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • python中split()函数的用法详解

    python中split()函数的用法详解

    Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串,这篇文章主要介绍了python中split()函数的用法详解,需要的朋友可以参考下
    2023-01-01
  • Python包资源下载路径报404解决方案

    Python包资源下载路径报404解决方案

    这篇文章主要介绍了Python包资源下载路径报404解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • 新手入门学习python Numpy基础操作

    新手入门学习python Numpy基础操作

    这篇文章主要介绍了新手入门学习python Numpy基础操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • Python使用socket_TCP实现小文件下载功能

    Python使用socket_TCP实现小文件下载功能

    这篇文章主要介绍了Python使用socket_TCP实现小文件下载功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • python实现自动发送邮件发送多人、群发、多附件的示例

    python实现自动发送邮件发送多人、群发、多附件的示例

    下面小编就为大家分享一篇python实现自动发送邮件发送多人、群发、多附件的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • pytorch环境配置及安装图文详解(包括anaconda的安装)

    pytorch环境配置及安装图文详解(包括anaconda的安装)

    这篇文章主要介绍了pytorch环境配置及安装图文详解(包括anaconda的安装),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Python实现简单的猜单词小游戏

    Python实现简单的猜单词小游戏

    这篇文章主要为大家详细介绍了Python实现简单的猜单词小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • 实例讲解Python中sys.argv[]的用法

    实例讲解Python中sys.argv[]的用法

    在阅读facenet网络的代码的时候,遇到了sys.argv[]这个函数,所以下面这篇文章主要给大家介绍了关于Python中sys.argv[]用法的相关资料,需要的朋友可以参考下
    2021-06-06
  • 机器学习、深度学习和神经网络之间的区别和联系

    机器学习、深度学习和神经网络之间的区别和联系

    机器学习>神经网络>深度学习≈深度神经网络,机器学习包括了神经网络在内的许多算法,而神经网络又可以分为浅度神经网络和深度神经网络,深度学习是使用了深度神经网络的技术,虽然机器学习、深度学习和神经网络是不同的,但在构建复杂系统时,许多相关概念是混合在一起的
    2024-02-02

最新评论