如何表示python中的相对路径

作者:silencement 时间:2022-09-06 14:13:41 

下面的路径介绍针对windows在编写的py文件中打开文件的时候经常见到下面其中路径的表达方式:


open('aaa.txt')
open('/data/bbb.txt')
open('D:\\user\\ccc.txt')

这三种表达式里面,前两个都是相对路径,第三个则是绝对路径。绝对路径比较好理解,就是最完整的路径,相对路径的相对则是不完整路径,这个相对指的就是相对于当前文件夹路径,其实就是你编写的这个py文件所放的文件夹路径!也就是说你写的相对路径必须是当前文件夹A里的文件a或者A里的文件夹B里的文件才可以open。

假设当前的py文件夹所处的位置是:D:\user\public

那么三行代码打开的文件所属的路径分别是:

D:\user\public\aaa.txt

D:\user\public\data\bbb.txt

D:\user\private\ccc.txt

很好理解就是当要打开py文件所处的文件时只要使用相对路径就行了,而要使用其他文件夹的则需使用绝对路径。

注:我们常用'/‘来表示相对路径,'\‘来表示绝对路径,上面的路径里\\是转义的意思,不懂的自行百度。

此外,网页网址和linux、unix系统下一般都用'/‘

当然我们也可以获得当前文件夹的绝对路径,如下:


import os
path1=os.path.abspath('.')   #表示当前所处的文件夹的绝对路径
path2=os.path.abspath('..')  #表示当前所处的文件夹上一级文件夹的绝对路径

所以我们常设置一个path1的全局变量来表示当前的绝对路径,再加上相对路径来打开需要打开的文件,这么做是为了在不同的平台上不冲突,因为不同平台在相对路径上的表示上存在区别。

知识点扩展:

1、绝对路径


os.path.abspath("文件名"):

显示的是一个文件的绝对路劲


>>> import os

>>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb")

>>> os.listdir()

['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__']

>>> os.path.abspath("settings.py")

'E:\\PycharmProjects\\odycmdb\\odycmdb\\settings.py'

2、相对路径


os.path.dirname("文件名"):

显示的是一个文件的相对路径


>>> import os

>>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb")

>>> os.listdir()

['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__']

>>> os.path.dirname("settings.py")

来源:https://www.py.cn/faq/python/16129.html

标签:python,相对路径
0
投稿

猜你喜欢

  • Microsoft VBScript 运行时错误 错误 800a0005 无效的过程调用或参数: chr

    2011-03-09 11:03:00
  • ASP怎么谈到应用到类的?

    2008-03-10 11:21:00
  • php版银联支付接口开发简明教程

    2023-11-24 00:27:41
  • Asp 操作Access数据库时出现死锁.ldb的解决方法

    2011-03-29 10:49:00
  • php自动获取字符串编码函数mb_detect_encoding

    2023-09-12 03:32:11
  • 面向对象设计过程中必须遵守的相关准则

    2009-01-08 15:52:00
  • Numpy之reshape()使用详解

    2022-11-12 22:03:02
  • 平面设计人员必读

    2008-07-16 11:58:00
  • SQL Server 2005:数据类型最大值

    2009-06-04 09:55:00
  • Python打印scrapy蜘蛛抓取树结构的方法

    2022-01-16 03:46:18
  • python+matplotlib演示电偶极子实例代码

    2021-07-09 12:52:35
  • ASP.NET MVC Bundles 用法和说明(打包javascript和css)

    2023-07-17 01:20:59
  • 使用PyV8在Python爬虫中执行js代码

    2022-05-09 14:33:36
  • 使用ajax开发的五大误区

    2008-09-03 12:46:00
  • 设计英文网站要注意的问题

    2011-04-28 11:22:00
  • Python配置文件yaml的用法详解

    2023-07-04 21:02:56
  • 如何把Recordset转换成彩色的XML文件?

    2009-11-02 20:22:00
  • 如何配置一个稳定的SQL Server数据库

    2008-12-09 14:07:00
  • Python实现人脸识别

    2022-10-01 06:06:24
  • python多线程分块读取文件

    2023-10-29 18:48:51
  • asp之家 网络编程 m.aspxhome.com