Python基础与办公自动化课件 单元6 文件操作_第1页
Python基础与办公自动化课件 单元6 文件操作_第2页
Python基础与办公自动化课件 单元6 文件操作_第3页
Python基础与办公自动化课件 单元6 文件操作_第4页
Python基础与办公自动化课件 单元6 文件操作_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单元6文件操作任务6.1从文件中读取唐诗目录【任务目标】文件“test6_01.txt”中按下面的格式保存了若干首唐诗。编写一个程序,从上述文件中读取唐诗目录,程序运行结果如下。【任务实施】……6.1文件读写读写文本文件读写CSV文件文件是操作系统管理和存储数据的基本单位。Python使用文件对象来读写文件。通常,文件可分为文本文件和二进制文件。(1)文本文件指以字符编码(如UTF、GBK等)方式保存的文件,字符编码用于将字符集中的字符映射为计算机可以识别的二进制数据,常见字符集有ASCII、GB2312、Unicode等。一个文本文件只能保存其所用字符集包含的字符。Python通常按字节读取文本文件中的字符,一个字符占用的字节数由字符编码定义。(2)二进制文件指以数码0、1形式保存数据的文件(文本文件本质上保存的也是二进制数据),通常所说的二进制文件指用于保存图像、音频和视频等数据的文件。6.1.1读写文本文件open()函数用于打开文件,并返回文件对象,通过该对象可以执行各种文件操作。open()函数的基本语法格式如下。其中:f为引用文件对象的变量;filename为文件名,可包含相对路径或绝对路径,省略文件路径时,Python在当前工作目录中搜索文件;mode为文件读写模式。(1)常用文件读写模式①r:只读模式,默认模式。②w:只写模式,以此模式创建新文件时,若文件已存在,则原来的文件被覆盖。③t:按文本文件格式读写文件数据,默认格式。④b:按二进制文件格式读写文件数据。“t”“b”可与“r”“w”组合使用,常用组合如下。①rt:文本文件格式、只读模式,默认读写模式,等同于“r”。例如,open('data.txt','rt')。②wt:文本文件格式、只写模式,等同于“w”。例如,open('data.txt','wt')。(2)常用文件对象方法①f.close():关闭文件。②f.read():将从文件指针位置开始到文件末尾的字符作为一个字符串返回。③f.read(n):将从文件指针位置开始的n个字符作为一个字符串返回。④f.readline():将从文件指针位置开始到下一个换行符(包括换行符)的字符作为一个字符串返回。⑤f.readlines():将从文件指针位置开始到文件末尾的字符作为一个列表返回,每一行的字符串作为一个列表元素。⑥f.write(xstring):在文件指针位置写入字符串,返回写入的字符个数。⑦f.writelines(xlist):将列表中的数据合并为一个字符串写入文件指针位置,返回写入的字符个数。⑧f.seek(n):将文件指针移动到第n+1个字符,n为0表示文件指针指向文件开头的第1个字符。⑨f.tell():返回文件指针指向的位置。示例代码6.1.2读写CSV文件CSV文件是纯文本文件,通常包含多条记录数据,第1行通常为记录的各个字段名称,从第2行开始为记录数据。每条记录包含相同的字段,字段之间用分隔符分隔。csv模块中的reader和writer对象可用于读写CSV文件示例代码任务6.2学生信息分类【任务目标】文件“studata.csv”中按下面的格式保存了若干学生信息。编写一个程序,从上述文件中读取学生信息,按教学点分别创建文件夹,文件夹中存放当前教学点不同专业的学生信息,每个专业的学生信息放在一个文件中,文件以专业名称命名。【任务实施】……6.2文件管理使用os模块使用shutil模块6.2.1使用os模块os模块提供了许多操作系统接口方法,包括文件和文件夹操作、环境变量访问等1.os.getcwd()os.getcwd()方法返回Python的当前工作目录,示例代码如下。2.os.mkdir()os.mkdir()方法用于创建子目录,示例代码如下。注意:Python对不同操作系统的路径分隔符“\”(Windows系统)和“/”(Unix类系统)做了兼容处理,在解析路径时会自动识别两种路径分隔符,并根据当前运行的操作系统进行转换。由于“\”在Python字符串中是转义字符(如\n表示换行),作为路径分隔符时,需要使用“\\”进行转义。为了减少转义错误,在代码中更推荐使用“/”作为路径分隔符。3.os.rmdir()os.rmdir()方法用于删除指定的空子目录,示例代码如下。注意,os.rmdir()方法只能删除空子目录,删除非空子目录时会出错,示例代码如下。4.os.listdir()os.listdir()方法返回指定目录包含的所有子目录和文件名称,示例代码如下。5.os.chdir()os.chdir()方法用于切换当前工作目录,示例代码如下。6.os.remove()os.remove()方法用于删除指定文件,示例代码如下。7.os.rename()os.rename()方法用于重命名文件,示例代码如下。6.2.2使用shutil模块shutil模块在os模块的基础上提供了更高级的文件和文件夹操作功能,如复制、移动文件等1.复制文件的内容和权限copy(a,b)用于复制文件的内容和权限。其中:a是源文件名,b是目标文件名或文件夹名。当b是文件夹名时,将文件a复制到该文件夹中,文件名不变注意:当函数中的输入路径不完整(如仅输入目录,需补充文件名)时,函数会优先使用操作系统的原生路径分隔符拼接路径,因此输出结果中会体现该分隔符;当函数中的输入路径完整时,无需拼接路径,输出结果中会保留输入中的路径分隔符。此外,与操作系统直接相关的函数(如os.getcwd()),会严格遵循当前系统的原生路径分隔符。示例代码2.复制文件的内容、权限、元数据copy2(a,b)用于复制文件的内容、权限、元数据(包括访问时间、修改时间、作者等),示例代码如下。3.复制文件内容copyfile(a,b)用于将a文件的内容复制到b文件中,a和b必须是文件,不能是文件夹,且b有写入权限,示例代码如下。4.复制文件夹copytree(a,b)用于将文件夹a的全部内容复制到新建的文件夹b中,示例代码如下。如果b已经存在,则程序会出错。5.移动文件和文件夹move(a,b)用于将文件或文件夹a移动到目标文件夹b中,示例代码如下。如果b中存在同名文件或文件夹,则程序会出错。6.删除文件夹rmtree(a)用于删除文件夹a,示例代码如下。7.创建压缩文件make_archive(base_name,format,root_dir,base_dir)用于创建压缩文件。其中:base_name是压缩文件名;format为压缩格式,可以是zip(如果zlib模块可用)、tar、gztar(如果zlib模块可用)、bztar(如果bz2模块可用)或xztar(如果lzma模块可用);root_dir是保存压缩文件的目录,也是被压缩文件或文件夹的根目录;base_dir是被压缩文件的起始目录,也是root_dir下的子文件夹。示例代码8.解压缩文件unpack_archive(filename,extract_dir,format)用于解压缩文件。其中:filename为压缩文件名extract_dir为解压缩后文件的保存文件夹(默认为当前文件夹)format为压缩格式(默认为压缩文件的格式)。示例代码如下。【综合实例】报名表分类文件“

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论