理解Python中的绝对路径和相对路径

yipeiwu_com7年前Python基础

本文介绍了Python中的绝对路劲和相对路径,分享给大家,也给自己留个笔记

1、绝对路径

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

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

eg:

>>> 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("文件名"):

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

eg:

>>> import os

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

>>> os.listdir()

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

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

3、总结

一般情况下,绝对路劲函数和相对路径函数是结合起来用的,特别是在多个文件包之前相互导入

①os.path.dirname(os.path.abspath("文件名")): 表示获取当前文件夹的所在的目录

eg:

>>> 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'

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

'E:\\PycharmProjects\\odycmdb\\odycmdb' 

②os.path.dirname(os.path.dirname(os.path.abspath("文件名"))): 表示获取当前文件夹上一层目录

eg:

>>> 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'

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

'E:\\PycharmProjects\\odycmdb' 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

利用Python获取操作系统信息实例

前言 每一位运维人员都应该对自己所管理的机器配置很清楚,因为这对我们快速处理问题很有帮助,比如随着业务增长,突然某些机器负载上涨的厉害,这时候要排查原因,除了从应用程序、架构上分析外,当...

Python 操作 ElasticSearch的完整代码

Python 操作 ElasticSearch的完整代码

官方文档:https://elasticsearch-py.readthedocs.io/en/master/   1、介绍     python提供了操作ElasticSearch 接...

Python数据结构与算法之列表(链表,linked list)简单实现

Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked lis...

栈和队列数据结构的基本概念及其相关的Python实现

先来回顾一下栈和队列的基本概念: 相同点:从"数据结构"的角度看,它们都是线性结构,即数据元素之间的关系相同。 不同点:栈(Stack)是限定只能在表的一端进行插入和删除操作的线性表。...

Python中的__SLOTS__属性使用示例

看python社区大妈组织的内容里边有一篇讲python内存优化的,用到了__slots__。然后查了一下,总结一下。感觉非常有用 python类在进行实例化的时候,会有一个__dict...