Python 相对路径和绝对路径及写法演示

yizhihongxing

下面是 Python 相对路径和绝对路径的详细讲解以及写法演示攻略。

相对路径和绝对路径

在 Python 中,文件的路径有两种表示方式:相对路径和绝对路径。相对路径是相对于当前文件所在的目录的路径,而绝对路径则是从文件系统的根目录开始的路径。

使用相对路径可以更方便地描述文件的位置,但是相对路径存在依赖关系,修改文件结构可能会导致代码出现运行错误。而绝对路径则可以准确地指定文件的位置,但是代码可移植性较差,跨平台时需要进行路径的转换。

相对路径的写法

相对路径的书写方法有两种:

第一种是使用一个点“.”表示当前文件所在的目录,使用两个点“..”表示当前文件所在的目录的上一级目录。例如:

# 当前目录下的 file.txt 文件
with open("./file.txt", "r") as f:
    print(f.read())

# 当前目录的上一级目录下的 file.txt 文件
with open("../file.txt", "r") as f:
    print(f.read())

第二种是使用相对于当前文件所在的目录的路径,例如:

# 当前目录下的 dir 目录的 file.txt 文件
with open("dir/file.txt", "r") as f:
    print(f.read())

# 当前目录下的 dir 目录下的 sub 目录的 file.txt 文件
with open("dir/sub/file.txt", "r") as f:
    print(f.read())

绝对路径的写法

绝对路径表示从文件系统的根目录开始的路径,可以通过 os 模块的 realpath() 函数将相对路径转换为绝对路径。例如:

import os

# 相对路径转换为绝对路径
abs_path = os.path.realpath("dir/file.txt")
print(abs_path)

# 使用绝对路径打开文件
with open(abs_path, "r") as f:
    print(f.read())

示例说明

下面展示两个例子,分别是使用相对路径和绝对路径打开文件,并输出文件内容:

相对路径示例:

# 当前目录下的 file.txt 文件
with open("./file.txt", "r") as f:
    print(f.read())

# 当前目录下的 dir 目录的 sub 目录的 file.txt 文件
with open("dir/sub/file.txt", "r") as f:
    print(f.read())

绝对路径示例:

import os

# 相对路径转换为绝对路径
abs_path = os.path.realpath("dir/file.txt")

# 使用绝对路径打开文件
with open(abs_path, "r") as f:
    print(f.read())

以上是 Python 相对路径和绝对路径的详细讲解以及写法演示攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 相对路径和绝对路径及写法演示 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • Python常用编码的区别介绍

    当我们写Python代码时,有多种编码方式可供选择,而不同的编码方式之间也存在一些区别。下面我会逐一讲解常用的三种编码方式,它们分别是ASCII、UTF-8和ISO-8859-1。 ASCII编码 ASCII编码是最早的一种字符编码方式,它使用7个比特位来表示一个字符,总共可以表示128种不同的字符,包括26个英文字母、数字、符号等。 ASCII编码逐渐被淘…

    python 2023年5月20日
    00
  • python 利用jinja2模板生成html代码实例

    在Python中,我们可以使用jinja2模板引擎生成HTML代码。以下是Python利用jinja2模板生成HTML代码的完整攻略,包含两个示例。 示例1:使用jinja2模板引擎生成HTML代码 以下是一个示例,可以使用jinja2模板引擎生成HTML代码: from jinja2 import Template # 定义模板 template_str …

    python 2023年5月15日
    00
  • 对Python 3.5拼接列表的新语法详解

    在Python中,我们可以使用os模块来将列表中的字符串连接成一个长路径。下面将详细讲解Python如何实现这个功能,包括使用os.path.join()函数和使用拼接。 使用.join()函数连接路径 我们可以使用os.path.join()函数来连接路径。例如,我们可以将一个列表中的字符串连接成一个长路径。例如: # 示例1:使用os.path.join…

    python 2023年5月13日
    00
  • python3 对list中每个元素进行处理的方法

    以下是详细讲解“Python3对list中每个元素进行处理的方法”的完整攻略。 在Python3中,可以使用map()函数和列表推导式对list中的每个元素进行处理。 方法一:使用map()函数 可以使用map()函数对list中的每个元素进行处理。例如: lst = [1, 2, 3] new_lst = list(map(lambda x: x * 2,…

    python 2023年5月13日
    00
  • 跟老齐学Python之用while来循环

    跟老齐学Python之用while来循环 什么是while循环? 在Python编程语言中,while 循环是一种常见而又重要的代码结构,用于重复执行指定的代码块,直到给定的条件不再成立为止。当你需要重复执行某个代码块,但不确定循环次数时,while 循环就显得特别有用。 在程序中使用while循环可以达到多次重复执行一段代码的效果,直到不再满足某种条件为止…

    python 2023年5月30日
    00
  • Python调用ChatGPT制作基于Tkinter的桌面时钟

    下面我来为大家详细讲解基于Python调用ChatGPT制作基于Tkinter的桌面时钟的完整攻略。 简介 ChatGPT是一个基于自然语言处理的模型,可自动生成文本内容,其应用领域非常广泛。而Tkinter是Python自带的GUI库,可以用于构建各种图形用户界面,如对话框、标签、按钮等。在这篇攻略中,我们将使用Python调用ChatGPT模型,并结合T…

    python 2023年6月3日
    00
  • 基于python实现银行管理系统

    若想实现基于Python的银行管理系统,通常需要经过以下步骤: 1.需求分析 在开始编写代码之前,需要先更深入地考虑银行系统需要具备哪些功能,如账户创建、存款、取款、查询余额等。在此基础上,再定义系统的数据(比如存储账户信息的数据结构、交易流水等)和交互界面的形式等。 2.实现技术选型 Python中有多种处理数据和交互的技术可以供选择,比如基于命令行、We…

    python 2023年5月30日
    00
  • Python基于Tkinter模块实现的弹球小游戏

    Python基于Tkinter模块实现的弹球小游戏攻略 前置知识 在学习实现弹球小游戏前,需要掌握以下知识: Python基础语法 Python面向对象编程 Tkinter模块的使用方法 Canvas画布操作的基本方法 实现步骤 2.1 创建主窗口和画布 在Tkinter中,创建一个窗口需要使用Tk()函数。在窗口中创建画布需要用到Canvas()函数。代码…

    python 2023年6月13日
    00
合作推广
合作推广
分享本页
返回顶部