书签 分享 收藏 举报 版权申诉 / 34
上传文档赚钱

类型Python程序设计基础-Chap05-文件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3371568
  • 上传时间:2022-08-24
  • 格式:PPT
  • 页数:34
  • 大小:530KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《Python程序设计基础-Chap05-文件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Python 程序设计 基础 Chap05 文件
    资源描述:

    1、内容提纲内容提纲5.1 文件和文件路径 2 25.2 文件的读写3 35.3 文件定位4 43 35 55.4 文件相关函数及综合应用1 15.5 CSV文件操作引例v引例 程序员经常要进行目录和文件的操作,例如建立、删除目录,建立、删除文件,读写文件等。v import os v os.getcwd()v#以上语句获取当前工作目录vd:Python34v os.mkdir(temp)v#以上语句在当前目录下创建一个子目录tempv os.chdir(temp)v#以上语句切换当前目录(即工作目录)到temp子目录下v os.getcwd()vd:Python34tempv tempFile=

    2、open(ws.txt,w)v#以上语句以写方式打开一个文件,如果这个文件不存在就创建它v str=hellonworldv#创建一个字符串,以备写入文件v tempFile.write(str)v#将str写入文件v tempFile.close()v#关闭文件v newFile=open(ws1.txt,w)v#新创建一个文件v tempFile=open(ws.txt,r)v#打开ws.txt文件v str=tempFile.read(5)v#读取5个字符v newFile.write(str)v#将这5个字符写入新文件ws1.txtv tempFile.close()v newFile

    3、.close()v#以上两行关闭两个打开的文件v os.remove(ws.txt)v#删除ws.txt文件5.1 文件和文件路径文件和文件路径5.1 文件和文件路径文件和文件路径v 5.1.1 os.path.join()和os.mkdir()v 在Windows上,目录分隔符为“”,而在Linux或OS X中为“/”,如果想要程序正常运行在所有的操作系统上,在编写Python程序时,必须处理这两种情况。v 一个好的办法就是在程序中不使用“/”或“”做路径分隔符,而用os.path.join()函数来处理路径。将单个文件和路径上的目录名称的字符串传递给os.path.join(),不管是什么

    4、操作系统,os.path.join()都返回一个与此操作系统相对应的文件路径的字符串 5.1.2 绝对路径和相对路径 绝对路径总是从根目录开始,通过一个绝对路径能唯一定位到一个确定的目录下,比如:“D:programsjava”一个绝对路径,“D:”表示Windows系统下D盘根目录,“programs”是该根目录下的一个子目录,“java”是“programs”目录下的一个子目录,因此该路径定位到D盘根目录下的programs目录下的java目录下。5.1 文件和文件路径文件和文件路径v5.1.3 查看当前目录os.getcwd()v在涉及目录操作的过程中,始终要有“当前工作目录(又叫工作目

    5、录)”这个概念,知道所有相对路径都基于当前工作目录。有时我们不清楚当前目录或忘记了当前目录是什么,若要进行目录和文件的创建,则要搞清楚当前目录是什么,可用os.getcwd()查看当前目录。5.1 文件和文件路径文件和文件路径v5.1.4 改变当前目录os.chdir()v我们可以在一个目录下操作其他目录,这个时候可以用绝对路径的方式,但如果涉及的操作很频繁,为了避免输入较长的绝对路径,可以把要操作的路径设置为“当前路径”。比如现在D:Python34目录下,但要在D:wsdoc目录下进行各种操作,这个时候可以用以下方式将此目录设为当前目录。5.1 文件和文件路径文件和文件路径 5.1.5 o

    6、s.remove()及os.rmdir()os.remove()为删除指定文件,比如os.remove(“ws.txt”)删除当前目录下的ws.txt文件;os.rmdir()为删除指定目录,比如os.rmdir(“wsdoc”)删除当前目录下的ws子目录下的doc子目录。5.1 文件和文件路径文件和文件路径v5.1.6 rename()函数 vrename()函数需要两个参数,当前的文件名和新文件名。v语法:os.rename(current_file_name,new_file_name)v例如:v下例将ws.txt重命名ws1.txt。v import osv os.rename(ws.

    7、txt,ws1.txt)5.1 文件和文件路径文件和文件路径 5.1.7 表示当前目录的“.”和表示上级目录的“.”“.”和“.”分别代表当前目录和上一级目录。例如,在D:Python34ws目录下,使用os.mkdir(“.doc”)表示在当前目录下创建一个子目录doc。不过当前目录通过可以省略,默认情况下你使用的每一条涉及路径的指令都是相对于当前目录的,所以上述语句可以改为os.mkdir(“doc”)。5.1 文件和文件路径文件和文件路径 5.1.8 os.walk()方法 此方法用于在目录树中游走输出在目录中的文件名,向上或者向下。在UNIX、Windows中有效。walk()方法语法

    8、格式如下:os.walk(top,topdown=True,onerror=None,followlinks=False)5.2 文件的读写文件的读写v5.2.1 open()函数v用Python内置的open()函数打开一个文件,创建一个file对象,相关的函数就可以调用它进行读写v语法:vfile object=open(file_name,access_mode,buffering)5.2 文件的读写文件的读写5.2 文件的读写文件的读写v5.2.2 read()方法vread()从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不仅仅是文本。v语

    9、法:vfileObject.read(count);v在这里,参数count是要从已打开文件中读取的字节计数。该函数从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。5.2 文件的读写文件的读写v5.2.3 write()方法vwrite()可将任何字符串写入一个打开的文件。需要注意的是,Python字符串可以是二进制数据,而不仅仅是文本。vwrite()函数不会在字符串的结尾添加换行符(n):v语法:fileObject.write(string);v在这里,被传递的参数是要写入已打开文件的内容。v以写方式打开文件,如果文件不存在,将在当

    10、前文件夹中创建文件。5.2 文件的读写文件的读写 5.2.4 通用新行格式文件的输入和输出修饰符为U修饰符,这个符号特别有用。在不同的操作系统中,某些特殊字符或字符集在写入文件时会发生变化。其中一个特殊字符是换行符,它位于字符串尾,表示下一个字符从文本的下一行开始。在操作系统发展过程中,有多种方法来表示另一行的开始,比如“n”和“r”,5.2 文件的读写文件的读写5.3 文件的定位文件的定位v用open()打开一个文件后,有一个指针指向文件的开始位置,read()函数读取一个文件后,指针将向后移动相应的数目。v假设ws.txt中的内容为:vhello world5.3 文件的定位文件的定位v

    11、请看下面的代码执行情况:v fo=open(ws.txt)v str=fo.read(2)v print(str)v he#此处输出两个字符,文件指针向后移动两个位置。v str=fo.read(2)v print(str)v ll#此处输出两个字符,文件指针再次向后移动两个位置。v str=fo.read(3)v print(str)v o w#此处输出三个字符(注意o与w间有一个空格),文件指针向后移动三个位置。v fo.close()5.3 文件的定位文件的定位v 5.3.1 tell()函数v tell()函数告诉你文件内的当前位置;换句话说,下一次的读写会发生在文件开头这么多字节之后

    12、。例如:v fo=open(ws.txt)v fo.tell()v 0 文件刚打开,指针指向文件开始位置。v str=fo.read(2)v fo.tell()v 2 读取2个字符后的指针位置v str=fo.read(3)v fo.tell()v 5 读取5个字符后的指针位置v fo.close()5.3 文件的定位文件的定位 5.3.2 seek()函数 seek(offset,from)函数改变当前文件的位置,offset变量表示要移动的字节数,from变量指定开始移动字节的参考位置。如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位

    13、置。如果它被设为2,那么该文件的末尾将作为参考位置。5.4 文件、目录相关函数及示例文件、目录相关函数及示例v 5.4.1 file对象函数v file 对象使用open函数来创建,下面列出了file对象常用的函数。v(1)file.close()v 关闭文件。关闭后文件不能再进行读写操作。v(2)file.flush()v 刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件,而不是被动地等待输出缓冲区写入。v(3)file.fileno()v 返回一个整型的文件描述符(file descriptor FD 整型),可以用在如os模块的read函数等一些底层操作上。5.4 文件、目录相关函数

    14、及示例文件、目录相关函数及示例v(4)file.isatty()v 如果文件连接到一个终端设备返回 True,否则返回 False。v(5)file.next()v 返回文件下一行。v(6)file.read(size)v 从文件读取指定的字节数,如果未给定或为负则读取所有。v(7)file.readline(size)v 读取整行,包括 n 字符。v(8)file.readlines(sizeint)v 读取所有行并返回列表,若给定sizeint0,返回总和大约为sizeint字节的行,实际读取值可能比sizeint较大,因为需要填充缓冲区。v(9)file.seek(offset,when

    15、ce)v 设置文件当前位置。5.4 文件、目录相关函数及示例文件、目录相关函数及示例(10)file.tell()返回文件当前位置。(11)file.truncate(size)截取文件,截取的字节通过size指定,默认为当前文件位置。(12)file.write(str)将字符串写入文件,没有返回值。(13)file.writelines(sequence)向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。5.4 文件、目录相关函数及示例文件、目录相关函数及示例5.4.2 目录常用函数下面是常用的目录操作函数。(1)os.getcwd()得到当前工作目录,即当前Python

    16、脚本工作的目录路径。(2)os.listdir()返回指定目录下的所有文件和目录名。(3)os.remove(filename)删除文件filename。(4)os.removedirs()删除多个目录。(5)os.path.isfile()检验给出的路径是否是一个文件。5.4 文件、目录相关函数及示例文件、目录相关函数及示例(6)os.path.isdir()检验给出的路径是否是一个目录。(7)os.path.isabs()判断是否是绝对路径。(8)os.path.exists()检验给出的路径是否存在。(9)os.path.split()将参数指定的路径分割成目录和文件名二元组返回5.4

    17、文件、目录相关函数及示例文件、目录相关函数及示例v 5.4.3 os模块综合应用示例v下面通过一个综合例子来熟悉os模块中的函数功能。v 编写一个程序,在目录树中搜索包含指定字符串的文本文件,并建立文件列表及文件所在目录的列表。搜索从当前目录开始,沿着目录树向下搜索,直到全部搜索完成。思路如下:在每一个目录中,检查该目录下的每个文件,判断其是否为文本文件(在Windows系统中,扩展名为.txt)。如果是文本文件,则打开,读取其中的内容,然后搜索指定字符串,如果找到,则将文件添加至文件列表,同时将所在目录添加到目录列表。完成搜索后,输出找到的内容。5.5 CSV文件操作文件操作vCSV文件不是

    18、一种独立的文件类型,而是一种有特殊格式的文本文件,可以使用文本文件函数和方法。CSV文件用于纯文本存储表格数据。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其他字符或字符串,最常见的是逗号或制表符。5.5 CSV文件操作文件操作v5.5.1 CSV模块vPython提供了CSV模块来解决处理CSV文件中的各种问题,CSV模块能够兼容多种来源并且以简单的方式读写CSV文件。CSV.reader对象读取文件,CSV.writer则写文件。5.5 CSV文件操作文件操作 要将Exc

    19、el表格转换成一个CSV格式的文件,具体操作如下。(1)单击“文件”菜单,选取“另存为”选项。(2)在“保存类型”中找到“CSV(逗号分隔)(*.csv)”。(3)保存,如图5-6所示。单击“保存”按钮后可能会弹出图5-7所示的提示信息,这时单击“是(Y)”即可,回到工作目录,可以看到转换好的CSV文件。5.5 CSV文件操作文件操作v5.5.2 CSV Readerv我们用reader构造函数方法创建CSV.reader对象。需要注意的是,reader方法的参数是文件对象,也就是说,必须以只读方式打开文件并创建文件对象。reader构造函数返回reader对象,该对象可以用来遍历文件。与文件

    20、对象相似,可以用于遍历文本文件的内容,不过不同之处在于CSV.reader每次循环返回文件中的一行。并且从循环返回的值不是字符串,而是字符串列表,列表中每个元素代表行中的一个字段。5.5 CSV文件操作文件操作v5.5.3 CSV Writerv与reader一样,使用writer的构造函数来创建CSV.writer对象,参数是以写方式打开的文件对象。CSV.writer用writerow将数据行写入对应的文件中。本章小结本章小结v文件被组织在目录(文件夹)中,路径描述了一个文件的位置。运行在计算机上的每个程序都有一个当前工作目录,它让你相对于当前的位置指定文件路径,而并不是总需要绝对路径。os.path模块包含许多函数,用于操作文件路径。v我们编写的程序可以直接操作文本文件的内容。open()函数打开这些文件,将它们的内容读取为一个大字符串read(),或读取为字符串的列表readlines()。open()函数可以将文件以写模式或添加模式打开,分别创建新的文本文件或在原来的文本文件中添加内容。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:Python程序设计基础-Chap05-文件.ppt
    链接地址:https://www.163wenku.com/p-3371568.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库