【python基础】文件-文件路径
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基础】文件-文件路径的更多相关文章
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
- 第二篇:python基础之文件读写
python基础之文件读写 python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使 ...
- python基础篇(文件操作)
Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...
- 七. Python基础(7)--文件的读写
七. Python基础(7)--文件的读写 1 ● 文件读取的知识补充 f = open('file', encoding = 'utf-8') content1 = f.read() content ...
- Python基础_文件的的处理及异常处理
今天主要讲讲文件读写及异常处理. 一.文件操作 1.1 文件的创建及读 打开文件 open 函数 open(file,[option]) file 是要打开的文件 option是可选择的参数文件的打 ...
- 【穿插】Python基础之文件、文件夹的创建,对上一期代码进行优化
在上一期妹子图的爬虫教程中,我们将图片都保存在了代码当前目录下,这样并不便于浏览,我们应该将同一个模特的图片都放在一个文件夹中. 今天我们就简单讲一下Python下如何创建文件.文件夹,今后就可以用上 ...
- python基础之文件处理
读和写文件 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直 ...
- Python基础、文件处理
一.概述 Python中操作文件是通过file对象来处理的,步骤: 指定文件的路径.操作的模式 对文件进行操作,读或写操作 关闭文件对象 f = open( '文件路径','访问模式') # 打开文件 ...
- python基础4文件操作
在磁盘上读取文件的 功能都是由操作系统来实现的,不允许普通的程序直接操作磁盘,所以读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据( ...
- Python基础之文件处理、函数、内置函数 (三)
内置函数 一 详细见python文档,请点击 文件操作 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 文件句柄 = file('文件路径', '模式') 注:python中打开 ...
随机推荐
- 自用纯C语言实现任务调度(可用于STM32、C51等单片机)
前言 这个任务调度模块的实现是形成于毕设项目中的,用在STM32中,断断续续跨度2个月实现了一些基本功能,可能后面再做其他项目时会一点点完善起来,也会多学习相关知识来强化模块的实用性和高效性,毕竟 ...
- VMware另一个程序锁定文件的一部分,进程无法访问
问题描述:搭建RAC11g,在做共享磁盘的时候,节点2要共享节点1的磁盘,但是有一个问题,节点2关机之后,再打开,是有一个访问节点1的磁盘的过程,如果访问失败,就会开不了机器 rac1加的三个磁盘: ...
- React框架使用
一:使用Vite创建React项目 二:React中组件使用 import React, { Component, useState } from "react"; //使用cla ...
- [C++提高编程] 3.6 queue 容器
文章目录 3.6 queue 容器 3.6.1 queue 基本概念 3.6.2 queue 常用接口 3.6 queue 容器 3.6.1 queue 基本概念 概念:Queue是一种先进先出(Fi ...
- Netty之数据解码
一.概况 作为Java世界使用最广泛的网络通信框架Netty,其性能和效率是有目共睹的,好多大公司都在使用如苹果.谷歌.Facebook.Twitter.阿里巴巴等,所以不仅仅是因为Netty有高效的 ...
- shiro拦截axios请求导致@RequireRole注解失效
文章目录 ShiroRequiresRole注解对于axios请求无效 场景再现 解决方案 网上的解决方案 最近在整理一个自己以前做过的系统,想要添加一些功能,发现shiro框架出现了点问题,觉得这个 ...
- ACID和CAP特性
文章目录 ACID和CAP理论 ACID CAP ACID和CAP理论 ACID **atomicity(原子性):**所有的事务要么都成功要么都失败, **consistency(一致性):**执行 ...
- 在算数运算中,能否将 bool 值 true 视作 1?
true == 1; true + 1; If the destination type is bool, see 4.12. If the source type is bool, the valu ...
- 【Redis】-使用Lua脚本解决多线程下的超卖问题以及为什么?
一.多线程下引起的超卖问题呈现1.1.我先初始化库存数量为1.订单数量为0 1.2.开启3个线程去执行业务 业务为:判断如果说库存数量大于0,则库存减1,订单数量加1 结果为:库存为-2,订单数量为3 ...
- Django笔记三十六之单元测试汇总介绍
本文首发于公众号:Hunter后端 原文链接:Django笔记三十六之单元测试汇总介绍 Django 的单元测试使用了 Python 的标准库:unittest. 在我们创建的每一个 applicat ...