1.文件路径

我们发现不管是写入还是写出操作,我们提供的都是文件名,其实这里准确说应该是文件路径。当我们简单把文件名传递给open函数时,Python将在当前执行程序的文件所在的目录中查找文件名所代表的文件。

根据组织文件的方式,可能需要打开不在当前执行程序文件所属目录中的文件。如果此时我们把该文件名传递给open函数那么会找不到该文件。要让Python打开不与当前执行程序文件位于同一路径下的文件时,需要提供文件路径,它让Python到系统的特定位置去查找。

提供文件路径的方式有两种:绝对文件路径和相对文件路径

1.1绝对文件路径

绝对文件路径,就是文件所在硬盘的具体路径。

我们通过PyCharm来复制文件的绝对路径

左键选中文件->右击->在菜单中选择Copy Path/Reference

选择Absolute Path

在使用绝对路径之前的程序如下所示:

将文件名修改为绝对路径之后,尝试运行程序

发现会报错,这是因为反斜杠\是转义字符,我们应该不让反斜杠\具有转义字符的功能,希望它成为字符串的一部分,我们可以在开头的单引号前加上r

在原本绝对路径字符串前加上r之后,发现程序运行的结果就符合我们的预想了。

1.2相对文件路径

相对文件路径,是相对当前执行文件的位置,一般是同级、上级目录、下级目录这三种。

1.2.1同级目录

同级目录情况下有两种书写方式,第一种是直接写文件名,我们之前就用的这种,不作过多介绍。第二种是用当前目录位置符-句点,编写程序如下所示。

斜杠代表目录层级

1.2.2下级目录

文件位置:

我们发现main主程序和down是同级目录,poems_down.txt,是down的下级目录,也就是说我们要打开的文件在下级目录里面。

我们知道了同级目录可以直接写文件名称或者./的方式,这里的down是同级目录,所以我们通过相对路径去寻找下级目录时,先找到同级目录,然后通过目录层级符/依次寻找到目标文件。在本例子中,我们只需down/poems_down.txt即可,编写程序如下所示。

1.2.3上级目录

文件位置:

我们发现main.py在main的目录之下,main文件夹和poems_up.txt是在同一级目录,所以说现在main.py要去打开上一级目录中的poems_up.txt,这里就需要用到上一级目录符号../,编写程序如下所示:

【python基础】文件-文件路径的更多相关文章

  1. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  2. 第二篇:python基础之文件读写

    python基础之文件读写   python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使 ...

  3. python基础篇(文件操作)

    Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...

  4. 七. Python基础(7)--文件的读写

    七. Python基础(7)--文件的读写 1 ● 文件读取的知识补充 f = open('file', encoding = 'utf-8') content1 = f.read() content ...

  5. Python基础_文件的的处理及异常处理

    今天主要讲讲文件读写及异常处理. 一.文件操作 1.1 文件的创建及读 打开文件 open 函数  open(file,[option]) file 是要打开的文件 option是可选择的参数文件的打 ...

  6. 【穿插】Python基础之文件、文件夹的创建,对上一期代码进行优化

    在上一期妹子图的爬虫教程中,我们将图片都保存在了代码当前目录下,这样并不便于浏览,我们应该将同一个模特的图片都放在一个文件夹中. 今天我们就简单讲一下Python下如何创建文件.文件夹,今后就可以用上 ...

  7. python基础之文件处理

    读和写文件 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直 ...

  8. Python基础、文件处理

    一.概述 Python中操作文件是通过file对象来处理的,步骤: 指定文件的路径.操作的模式 对文件进行操作,读或写操作 关闭文件对象 f = open( '文件路径','访问模式') # 打开文件 ...

  9. python基础4文件操作

    在磁盘上读取文件的 功能都是由操作系统来实现的,不允许普通的程序直接操作磁盘,所以读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据( ...

  10. Python基础之文件处理、函数、内置函数 (三)

    内置函数 一 详细见python文档,请点击 文件操作 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 文件句柄 = file('文件路径', '模式') 注:python中打开 ...

随机推荐

  1. 细节拉满,80 张图带你一步一步推演 slab 内存池的设计与实现

    1. 前文回顾 在之前的几篇内存管理系列文章中,笔者带大家从宏观角度完整地梳理了一遍 Linux 内存分配的整个链路,本文的主题依然是内存分配,这一次我们会从微观的角度来探秘一下 Linux 内核中用 ...

  2. 图与网络分析—R实现(一)

    图与网络 一个网络G,也可以称为图(graph)或网络图,是一种包含了节点V(即网络参与者,也称顶点)与边E(即节点之间的连接关系)的数学结构,记作G={V,E}.可以使用一个矩阵来存放节点之间的连接 ...

  3. ORA-19870: error while restoring backup piece 数据库恢复报错

    问题描述:用备份进行DG恢复,恢复过程中报错ORA-19870: error while restoring backup piece /backup/db_BJCCORA_20180724_02t8 ...

  4. Yapi及Swgger使用+注解

    1.Yapi 1.1 介绍 YApi 是高效.易用.功能强大的 api 管理平台,旨在为开发.产品.测试人员提供更优雅的接口管理服务.可以帮助开发者轻松创建.发布.维护 API,YApi 还为用户提供 ...

  5. 宝塔ftp无法连接的解决方案

    宝塔面板现在使用率非常的高.今天把自己的踩坑处理方法记录一下. 在配置号宝塔面板ftp后,使用vscode的sftp插件,发现一直链接不上.一度以为自己配置文件,配置的参数有问题.各种度娘后,花了好长 ...

  6. CopyOnWriteArrayList的使用和优缺点

    CopyOnWriteArrayList允许并发读,读操作无锁,性能较高: 而写操作(含删除),比如向容器中添加/删除一个元素,则首先将当前容器复制一份,然后在新副本上执行写操作,结束之后再将原容器的 ...

  7. .NET周报 【4月第4期 2023-04-23】

    国内文章 2023成都.NET线下技术沙龙圆满结束 https://www.cnblogs.com/edisonchou/p/2023_chengdu_dotnet_club_activity_rev ...

  8. 获取电脑的网络连接状态(五)WebClient

    网络连接判断,使用WebClient测试获取: 1 public static bool IsWebClientConnected() 2 { 3 try 4 { 5 using (var clien ...

  9. [Pytorch框架] 3.3 通过Sin预测Cos

    文章目录 3.3 通过Sin预测Cos 3.3 通过Sin预测Cos %matplotlib inline import torch import torch.nn as nn from torch. ...

  10. 2023-01-02:某天,小美在玩一款游戏,游戏开始时,有n台机器, 每台机器都有一个能量水平,分别为a1、a2、…、an, 小美每次操作可以选其中的一台机器,假设选的是第i台, 那小美可以将其变成

    2023-01-02:某天,小美在玩一款游戏,游戏开始时,有n台机器, 每台机器都有一个能量水平,分别为a1.a2.-.an, 小美每次操作可以选其中的一台机器,假设选的是第i台, 那小美可以将其变成 ...