打开文件|学习笔记

简介: 快速学习 打开文件

开发者学堂课程【Python 语言基础 3:函数、面向对象、异常处理打开文件】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/601/detail/8766


打开文件


内容简介


一、文件

二、Open 返回值

三、总结

 

一、文件(file)

在我们的计算机里一切皆是文件,比如说  “01.异常.py” 这是一个文本文件,电脑桌面上的所有图标快捷方式也是文件,随便一个软件打开文件所在位置会发现里面是各种各样的文件,包括看的电影、图片,听的音乐,所有在计算机里存的东西都是文件。我们可以手动的对这些文件进行操作,同样在 python 中也可以通过程序对文件进行操作。

 

所以,这里所说的文件是指:

1、通过 python 程序对计算机中的各种文件进行增删改查的操作。

2、文件还有另一个名字叫做 i/o(input/output)input 是输入,output 是输出。注意这都是对我们人来讲的,input 是指人通过程序从计算机中读取信息向人输入,同样,output 是指从人这里把一些信息输出到文件里。

3、操作文件的步骤:

①打开文件

②对文件进行各种操作(读、写),然后保存

③关闭文件

这是手工去操作一个文件的步骤。同样在 python 里对文件进行操作也需要经历这三个步骤。

 

通过 python 创建一个文件名叫 demo.txt 的文件,文件里写入 lorem 然后按下 tab 键回车会自动生成

 

这个英文文本没有任何意义,只是一个测试排版的文本。

现在想要打开 demo.txt 的文件,需要使用 python 的内接函数,找到文档中的Library Reference,打开 Built-in Functions,找到 open(),找到函数

open(file, mode='r, uffering-g-1 encoding=None, errors -None, newine=None, closefd= True, opener-None) 复制粘贴进 python。这就是一个打开文件的函数。

 

这里 file 是要打开的文件的名字(路径)

这里创建一个变量,来保存文件的名字:file name=‘demo.txt’ 这时候直接用open(file name)作为第一个参数传进去,这就是打开file name对应的文件。如何验证文件是不是打开呢?只要不报错就是打开了。方法是先改一个file name=‘demo123.txt’执行会发现报错了

 

但是这个错误实际上跟file没有任何关系,因为报的是语法的错误,是编码的问题。报这个错误是因为一开始使用代码时里面有一个 encoding=None,这 在 python中会被解析成要设置文件的编码,所以报错。要避免这种报错只需要修改一下,加一个下划线encoding =None就可以了。这个时候执行报文件报的错就是我们文件的错误了。

 

报错的原因是因为刚才把文件的名给改成了 demo123.txt。文件名修改到最开始的名字就可以正常打开了。所以以后打开文件就用 open函数。

 

二、Open 返回值

返回一个对象,这个对象代表了当前打开的文件。比如file obj= open(file name)#打开 file name 对应的文件。 直接print(file obj)保存打印会出现

表明这个对象确实存在,已经打开了。如果目标文件和当前文件在同一级目录下,则直接使用文件名即可。如果不在同一级目录下,比如创建一个文件名叫 hello 位于上一级把 demo.txt 文件移到 hello 里,这个时候就必须使用完整的路径:

File name=‘hello/demo.txt’保存执行才能够找到并打开文件。这里要注意如果是同一级目录下直接使用文件名就可以,而不在同一级目录中则需要把路径加上。

在 w indows 里表示一个路径的时候应该用的是\,但是在这里使用\的话会出现问题,因为 在 python 里 \ 代表的是转义字符。所以在 windows 系统使用路径时,可以使用 / 代替\。或者可以使用 \\ 代替 \,或者也可以使用原始字符串。原始字符串就是在字符串前加r比如:

file name=r‘hello\demo.txt这时候里边的转义字符就会被忽略。

现在把 hello 文件在往上移一级,file name=r‘hello\demo.txt这个字符串就没有效果了,所以表示路径,可以使用..来返回上一级目录。

现在是在 code,需要先到 hello 里所以:file name=‘../hello/demo.txt’ 。这里..就表示需要从当前目录出来也就是 code,出来后再去 hello 里边找demo.txt。保存执行后就可以找到 demo.txt 文件了。

如果目标文件距离当前文件比较远,此时可以使用绝对路径。

绝对路径应该从磁盘的根目录开始书写,比如桌面上的快捷方式就需要打开文件所在位置全部复制路径:

file name=‘D:\QQ\Bin\QQScLauncher.exe’ 注意这里\需要改成/或者使用原始字符串加上 r。

这就是一个绝对根路径,保存执行也可以找到目标文件。

 

三、总结

如果文件在当前目录下直接写文件名,如果不在当前目录下要写路径,如果不在路径里面用..返回,如果绝对路径比较远,需要使用文件的绝对路径。

相关文章
|
4天前
|
人工智能 运维 安全
|
2天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
10天前
|
人工智能 JavaScript 测试技术
Qwen3-Coder入门教程|10分钟搞定安装配置
Qwen3-Coder 挑战赛简介:无论你是编程小白还是办公达人,都能通过本教程快速上手 Qwen-Code CLI,利用 AI 轻松实现代码编写、文档处理等任务。内容涵盖 API 配置、CLI 安装及多种实用案例,助你提升效率,体验智能编码的乐趣。
833 109
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
435 11
|
3天前
|
人工智能 测试技术 API
智能体(AI Agent)搭建全攻略:从概念到实践的终极指南
在人工智能浪潮中,智能体(AI Agent)正成为变革性技术。它们具备自主决策、环境感知、任务执行等能力,广泛应用于日常任务与商业流程。本文详解智能体概念、架构及七步搭建指南,助你打造专属智能体,迎接智能自动化新时代。
|
4天前
|
机器学习/深度学习 传感器 算法
Edge Impulse:面向微型机器学习的MLOps平台——论文解读
Edge Impulse 是一个面向微型机器学习(TinyML)的云端MLOps平台,致力于解决嵌入式与边缘设备上机器学习开发的碎片化与异构性难题。它提供端到端工具链,涵盖数据采集、信号处理、模型训练、优化压缩及部署全流程,支持资源受限设备的高效AI实现。平台集成AutoML、量化压缩与跨硬件编译技术,显著提升开发效率与模型性能,广泛应用于物联网、可穿戴设备与边缘智能场景。
188 127