当前课程知识点:计算思维与人工智能基础 >  第三部分:python基础 >  第七章:文件操作 >  7.1文件的打开与读取

返回《计算思维与人工智能基础》慕课在线视频课程列表

7.1文件的打开与读取在线视频

下一节:7.2文件的写入

返回《计算思维与人工智能基础》慕课在线视频列表

7.1文件的打开与读取课程教案、知识点、字幕

大家好

我们下面给大家介绍第七章文件的操作

这章我们主要给大家介绍文件的打开

读取

写入以及CSV文件的特殊操作

Python语言通常使用数据文件来实现高效的输入输出操作

那么我们看在Python中的文件的分类是怎样的呢

首先我们来看一下标准的输入文件和标准的输出文件

在Python中呢

他是通过input的函数和print函数的实现的

那其实我们的标准的输入就是我们的键盘

标准的输出就是我们的显示器

那么文件如果从编码方式来分的话

那么有ASCII文件和二进制文件

ASCII文件也就是我们俗称的文本文件

那他的每个字符呢存储一个字节

那二进制文件是通过二进制编码来进行存储的

从文件的组织方式来分的话

它又分为流式文件和记录式文件

那么流式文件的他输出呢他文件的本身的这种换行啊

这分隔符是不起作用

那么它主要是通过外面的控制来控制我们的文件的输出

称之为为流式文件

另外一种呢就是文件它本身是由记录组成的

由一条记录一条记录

每个记录有不同的属性这样的结构组成的

如果从文件的存储方式来分的话

它又分为顺序存储文件和随机存储文件

那么顺序存储文件存储的就是按照他的逻辑顺序

来进行存取的

随机呢那我们可以什么呀

指到不同的地方

也就是说可以随机存取这个文件

文件的打开

在Python中文件的打开呢有两种方式

一种是open方式,一种是with open方式

他们来看方式一

那么通过open后面跟我们的文件名

在文件名前面可以带绝对路径相对路径啊

那么打开方式是读 写

还是读写方式

这里面的中间的就是我们其实是通过我们这个

赋给这个变量名

变量名下面的操作啊你对他进行的文件对象的操作

最后需要有一个

对我们这个变量也就文件打开是需要解锁

通过close这个方法来进行关闭

另外的话with open跟前面一样的S给一个变量

里面的是我们的对文件的操作

那么这个操作的过程中结束以后呢

跳出with以后它就自动关闭啊

在这个打开模式的话

我们这个地方都是简写

通常是这样子

那模式呢其实打开的有多种参数的

除了这个模式这个参数还有什么呀

buffering编码方式

还有这个errors就是我们的错误的这个等级呀

还有这个换行的方式啊

我们知道一下就行

常用的打开模式就是我们这个读啊,写啊,这样的模式

那么对我们的读写模式呢

我们需要比较清楚的在这给大家说一下

那么打开文件的方式呢我们看这个

我们通过这个图来更好的理解下

我们打开一个文件

它是什么样的方式

可以有三种方式

一种是读的方式

一种是写的方式

还有一种读写方式

读的方式呢

就是通过r来去表示

那么r读的时候呢

那也就说只能对文件进行读的操作

那么这个指针是指向文件的开头

那么还有另外一种就是写的方式

那么写的方式呢

是通过我们用W或者是a来表示

写的方式是截断也就说是覆盖还是不覆盖原有的文件

如果没有文件呢

是可以创建啊

如果截断的方式的话

也就说这个是覆盖掉的时候写

也就说这个指针是在文件的头

那么另外的话否的话

那就a的时候

那时我们叫什么不截断的这样的写

其实就是一个追加写啊

这个前面我把他叫覆盖写这个追加写

那么指针的就会指到文件的尾部追加上去

我们来看读写方式

读写方式也会有一个截断

那么截断就是覆盖

我们这个也跟前面这个W是一个相似的

也就是说他这个指针是会指到文件的开始的位置

那么这个是我们相当于也是一个什么覆盖的读写

可读可写

那么另外的话如果被截断的话

他只是指针的位置

如果是读的话

读写的是读的话

那么指针的位置就一定是在文件的开始

那么如果是读写的追加写的时候

它的指针也是在尾部

那么对照的上面的这个表我们可以看一下

r的时候他是就这样的方式

我们来看他是读

然后指针在开始

那么这个写的时候呢

它是写的方式的时候它是写

然后如果没有是创建

然后这就是要把它覆盖掉

指针位置是在开头

我们追加的方式是什么呀

是写

然后呢是创建位置在尾部

那么读写的时候是读加号的时候读

然后那是写

指针在开始

如果是写

读写的写

读写的时候

W加号的时候读写创建覆盖在开始的位置

追加写的时候是是读血

然后他可以创建

但是指针是在尾部的

这个需要大家注意

那么在这个模式后面的通常会带一个t和b

t的时候指的是文本文件

通常我们就缺省其实r就打开的是文本文件

那么带着rb或者是wb的时候打开的是二进制文件

我们来看我们文件的打开是怎么样如何打开和读取的

那么在文件读取的时候

我们会用到三个函数

也或者说我们对象的三个方法

把文件打开可以看成一个对象

就一个是read函数

一个是readline和一个readlines

read就是打开读全部的文件

我们看这个打开的方式

我们open这就是我们当前的这个我们这个文件的什么呀

当前的文件夹下面有一个目录是date

下面会有一个example1这样的一个txt文件读的方式打开

然后我们通过这个对象f.read我们就是读取全部的文件

然后进行关闭

读的文件的就会通过print语句把的输出

读入一行readLine就是读入一行

我们打开方式可以弄另外一个

我们with open

还是这个另外一个文件在这个目录下

可以读出他的一行

也可以是读取所有的行

把所有的行读出来

那么每一行为一个元素

这样的他是读出来的整个的是一个列表

有多个元素组成的列表

这样的反馈这个列表的时候

我们输出的时候就可以通过前面对于列表的输出

通过for...in这样的结构来进行处理

我们也看这段代码

我们也是打开这样的一个txt的文件

读出来的时候通过f.readlines是这样读出来

读出来他是一个列表

那我们这个列表呢

就可以通过for...in把他输出

然后open就需要有个关闭

with open是不要用这个它可以自动关闭

那么这个就是我们如何打开文件进行读取

我们在这jupyter下看一下这几个代码的执行结果

我们来看这个文件读取前面讲read是全部读取

我们可以看到这个文件

我们把它全部都读出来

是一个example这个文件我们全部读出来

我们可以看他有三句输出

这就是全部

如果我们按行读出来呢

我们用with open这样的方式

这是我们的文件

然后呢

我们print它

readline这样的读出方式

那我们应该就readline的话只能输出第一行

我们可以看得到这是两种读出方式

那么一个是通过read全部读出来

然后readline读出一行

我们再看看这个

那么这个是可以r t的效果是一样的

通过这样open通过open和close来打开文件操作

然后结束

这是我们执行的过程

还是这个example所以他的结果是一样的

下面我们看一下readlines的使用

那我们首先看这个是把文件读进来

还是我们的example.txt

然后呢这个readlines呢是把我们文件里的每一行

当成一个元素读入到一个列表中

所以呢我们就可以通过for...in的方式来输出他

那么这是列表

通过for...in把它输出每一个元素

我们看他的结果是什么样子的

就是我们刚才example的三句话

这就是我们readlines的用途

计算思维与人工智能基础课程列表:

第一部分:计算思维

-1.计算思维的提出

-2.计算思维的要素与应用

-3.培养计算思维

-4.智能时代的教师与教学

-章测试

第二部分:人工智能

-1.人工智能的发展

-2.人工智能的实现与机器学习

-3.人工智能产业

-章测试

第三部分:python基础

-第一章:python简介

--1.1python的介绍

--1.2.anaconda的安装

--章测试

-第二章:编码规范

--2.1 python编码规范

--2.2常量和变量

--章测试

-第三章:数据类型

--3.1数据类型概述

--3. 2.数据转换

--3.3数据类型区别

--章测试

-第四章:基本运算

--4.1.基本运算符

--4.2比较运算符

--4.3逻辑运算符

--4.4位运算符

--4.5成员运算符与身份运算符

--4.6运算符的优先级

--章测试

-第五章:程序控制结构

--5.1顺序结构

--5.2条件结构

--5.3循环结构

--5.4跳转结构

--5.5异常处理

--章测试

-第六章:函数、模块与面向对象

--6.1函数的定义与调用

--6.2面向对象

--6.3魔法函数的应用

--6.4模块与包

--章测试

-第七章:文件操作

--7.1文件的打开与读取

--7.2文件的写入

--7.3CSV模块的应用

--章测试

-第八章:python生态库

--8.1第三方库的安装

--8.2标准库-Os库与Sys库

--8.3.标准库-Time库

--8.4标准库-Random库

--8.5标准库-Turtle库

--8.6第三方库-词云库

--8.7第三方库-pyinstaller库

--8.8第三方库-numpy库(上)

--8.9第三方库-numpy库(下)

--8.10第三方库-pandas库

--8.11第三方库-matplotlib库

--章测试

-第九章:TensorFlow基础

--9.1TensorFlow简介

--9.2TensorFlow 2.0的改进

--9.3TensorFlow的数据应用

--9.4 TensorFlow的设备应用

--9.5.TensorFlow中常用操作

--章测试

-第十章:实例分析与实践

--10.1认识回归问题

--10.2房价的预测

--10.3手写数字识别

--10.4卷积神经网络的介绍

--10.5全连接网络的搭建

--10.6卷积神经网络的实现服饰图片的分类

--10.7LeNet的介绍

--章测试

-第十一章:人工智能在自然语言中的应用

--11.1自然语言处理

--11.2命名实体识别技术

--11.3词向量表示

--11.4自然语言处理的挑战及应用

--章测试

7.1文件的打开与读取笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。