资源简介 (共26张PPT)Python文件操作(一)课前回顾1、多态多态指的是一类事物有多种形态,(一个类有多个子类,因而多态的概念依赖于继承)2、多态性多态性是编程中同一个操作因作用实例不同而表现出不同实现方式的特性。情境引入在计算机信息时代,文本文件可存储的数据量多得难以置信,例如气象站的天气数据、交管部门的交通数据、金融商业街的社会经济数据、电子图书馆或博物馆的文学作品等等。每当需要分析或修改存储在文件中的信息时,读取文件都很有用,对数据分析应用程序来说尤其如此。循序善诱在本节课的学习中我们将可以编写一个这样的程序:读取一个文本文件的内容,再重新设置这些数据的格式并将其写入文件,让浏览器能够显示这些内容。循序善诱要使用文本文件中的信息,首先需要将信息读取到内存中。为此,我们可以一次性读取文件的全部内容,也可以以每次一行的方式逐步读取。新知教授2、文件读取路径1、全文读取文件3、逐行读取文件4、课堂总结全文读取文件新知教授要读取文件数据,需要有一个包含几行数据信息的文本文件。下面我们来创建一个文件,它包含精确到小数点后30位的圆周率值,并且在小数点后每10位处都换行。思维构建我们将文件的名称与格式保存为pi.txt,然后将该文件保存到与我们此时运行的Python文件的同一个目录中。编玩边学with open('pi.txt') as file_object:contents = file_object.read()print(contents)我们通过程序打开文件pi.txt,并可以读取到其中的内容,并将其打印在控制台。编玩边学函数open()接受一个参数(要打开的文件的名称),返回一个表示文件的对象。关键字with在不再需要访问文件后会将其关闭。使用read()函数方法读取这个文件的全部内容,并将读取到的信息作为一个字符串存储在变量contents中。通过打印contents的值,就可将这个文本文件的全部内容显示出来。with open('pi.txt') as file_object:contents = file_object.read()print(contents)文件读取路径新知教授当将类似pi.txt这样的简单文件名传递给函open()时,Python将在当前执行的文件(即.py程序文件)所在的目录中查找文件。但是有时可能要打开不在运行程序文件所属目录中的文件。要让Python打开不与程序文件位于同一个目录中的文件,我们需要提供要打开的文件路径,它让Python到系统特定位置去查找。思维构建一般情况下,程序运行文件是与数据文件分开存放的。假如我们在程序需运行文件目录下新建一个data文件夹,然后我们将pi.txt放入其中,这时我们该如何通过程序来访问打开pi.txt文件呢?编玩边学with open('data\pi.txt') as file_object:contents = file_object.read()print(contents)这行代码让Python在当前运行的.py程序文件目录下的data文件夹中,寻找.txt文件。相对路径查找操作执行的文件,其实就是相对于当前运行.py程序文件的磁盘路径位置。相对路径查找思维构建还可以将文件在计算机中的准确位置告诉Python,这样就不用关心当前运行的.py程序文件存储在什么地方了。这称为绝对文件路径。在相对路径行不通时,可试着使用绝对路径。编玩边学with open('C:\全文读取文件\data\pi.txt') as file_object:contents = file_object.read()print(contents)运行程序后,我们看到此种方法,可以完成对绝对路径下的文件进行访问、操作,而且路径中也可以包含中文字符。绝对路径查找思维构建相对、绝对路径寻址的方式就像真实世界的地址,比如通过绝对路径寻址就像告诉系统:我是来自哪个省份、地级市、县(区)的一样,而相对路径寻址就像你已经有了地址作为参照,即以.py运行程序文件的地址作为参照地址,来告诉系统:我是同某某已知的.py运行程序文件是一个县的。逐行读取文件新知教授读取文件时,常常需要检查其中的某一行:可能要在文件中查找特定的信息,或者要以某种方式来修改文件中的文本内容。编学边玩file_path = 'C:\全文读取文件\data\pi.txt' with open(file_path) as file_object:for every_line in file_object:print(every_line)为查看文件的内容,我们通过对文件对象执行for循环来查看文件中的每一行。编学边玩file_path = 'C:\全文读取文件\data\静夜思.txt'with open(file_path,encoding='utf8') as file_object:for every_line in file_object:print(every_line)我们也可以对中文文本信息进行读取。在进行中文文本信息读取的过程中,需要读取的目标文本文档的编码方式必须是UTF-8的格式,在open()函数方法中指定编码encoding='utf8'。实践创作完成本节课的程序,尝试读取更多的文本文件。课堂总结1、全文读取文件with open('pi.txt') as file_object:contents = file_object.read()print(contents)2、文件读取路径相对路径读取与绝对路径读取3、逐行读取文件file_path = 'C:\全文读取文件\data\pi.txt' with open(file_path) as file_object:for every_line in file_object:print(every_line)分享交流同学们今天写代码有没有遇到什么问题?演示今天打印的代码同学们,要加油哦!下节课见啦 展开更多...... 收起↑ 资源预览