版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章文件与文件夹操作王小宁目录Contents2文件操作011.文件介绍文件是在操作系统中管理用户数据的基本单元,其最底层是二进制文件。常见的文件类型有文本文件(.txt)、文档文件(.docx)、表格文件(.xlsx)、图像文件(.jpg、.png)、音频文件(.wma、.mp4、.wav)、视频文件(.avi、.mp4)等,所有的文件类型均可以作为二进制文件进行读写。二进制文件无法用记事本或其他普通字处理软件正常进行编辑,人类也无法直接阅读和理解,需要使用正确的软件进行解码或反序列化之后才能正确地读取、显示、修改或执行。文本文件是占用内存较小的一种文件类型,以文本形式存储数据的文件,通常包含人类可读的字符和文本信息,在众多文件类型中使用较多。2.文件操作函数open()open()函数的基本语法为:open(file,mode='r',buffering=-1,encoding=None,errors=None,newline=None,closefd=True,opener=None)其中,参数说明如下:File:要打开的文件路径。mode:打开文件的模式,可以是只读、写入、追加等模式,默认为“r”,即只读模式。buffering:设置缓冲策略,默认值为-1,表示使用系统默认缓冲区大小。encoding:指定文件编码格式,默认为None,即使用系统默认编码。errors:指定编码错误处理方式,默认为None。newline:指定写入文件时的换行符,默认为None。closefd:指定是否在close()时同时关闭底层的文件描述符,默认为True。opener:指定自定义的打开器,用于打开文件(比如说打开加密文件)。2.文件操作函数open()mode的参数如表6-1所示。模式说明延伸模式读取文本文件r只读模式(默认模式,可省略),要求文件存在r+,支持读写,文件指针将会放在文件的开头。w写模式,如果该文件已存在则将其覆盖,如果该文件不存在,创建新文件w+,支持读写,如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。a追加模式,如果该文件已存在,文件指针将会放在文件的结尾,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入a+,支持读写,如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。读取二进制文件rb二进制文件只读模式,不需要encoding参数,要求文件存在rb+,支持读写,文件指针将会放在文件的开头。wb二进制文件写模式,如果该文件已存在则将其覆盖,如果该文件不存在,创建新文件wb+,支持读写,如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。ab二进制文件追加模式,如果该文件已存在,文件指针将会放在文件的结尾,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入ab+,支持读写,如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。3.
文件对象的属性和方法文件的常用属性有closed、mode和name。属性意义closed返回文件是否已经关闭,返回True表示已经关闭,返回False表示未关闭mode返回文件的打开模式name返回文件名3.
文件对象的属性和方法程序正常读取文件后,一般要对文件中的内容进行读取或写入,因此,我们还需要了解文件的操作方法。方法功能说明f.close()关闭文件,释放文件对象f.read(n)读取并返回整个文件内容,如果给出参数,返回前n个字符f.readline()读取并返回指针后的一行内容f.readlines()读取并返回包含文本文件中指针后所有行内容的列表f.write(s)把s的内容写入文件f.writelines(s)把列表s中的所有字符串写入文本文件f.tell()返回指针的当前位置f.seek(offset,[whence])把指针移动到新的位置(以字节为单位),offset表示相对于whence的位置。为0表示从文件头开始计算,为1表示当前位置,2表示文件末尾,默认03.
文件对象的属性和方法上下文管理语句with可以自动管理资源,不论因为什么原因跳出with块,总能保证文件被正确关闭。with语句的语法形式如下:withopen(filename,mode,encoding)asf:#这里写通过文件对象f读写文件内容的语句使用with语句时,自带了关闭文件的功能,因此可以省略f.close()语句。文件夹操作021.os模块os模块的常用方法如表6-4所示。方法功能描述chdir(path)切换到指定目录getcwd()获取当前目录listdir(path)获取当前目录下的文件信息mkdir(path)创建文件夹remove(path)删除指定文件rmdir(path)删除空的文件夹rename(old,new)重命名文件或文件夹system(command)运行系统的shell命令walk(path)递归返回指定目录下的所有子目录,并且是由path、子目录、文件组成的三元组1.os模块os模块的常用属性,如表6-5所示。属性含义描述os.sep表示路径中的分隔符,在Windows中是'\',在Linux/Unix中是'/'os.linesep表示行终止符,在Windows中是'\r\n',在Linux/Unix中是'\n'表示操作系统的名称2.os.path模块os.path模块的常用方法如表6-6所示。方法功能说明abspath(path)返回给定路径的绝对路径basename(path)返回指定路径的最后一个组成部分dirname(path)返回给定路径的文件夹部分exists(path)判断文件是否存在getatime(filename)返回文件的最后访问时间getctime(filename)返回文件的创建时间getmtime(filename)返回文件的最后修改时间getsize(filename)返回文件的大小isdir(path)判断path是否为文件夹isfile(path)判断p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026护理职业考试题及答案
- 2026云南红河州弥勒市紧密型县域医共体江边分院招聘合同制护士及办公室人员3人备考题库附答案详解(a卷)
- 2026安徽黄山市徽城投资集团有限公司招聘3人备考题库附答案详解(精练)
- 2026贵州医科大学招聘专职辅导员(非事业编制)10人备考题库附答案详解(考试直接用)
- 2026年上半年广西体育高等专科学校招聘32人备考题库附答案详解(综合卷)
- 2026山东菏泽市定陶区两夹弦非遗保护传承中心招聘事业工作人员备考题库附答案详解(巩固)
- 2026甘肃兰炭医院招聘2人备考题库附答案详解(综合题)
- 2026中国铁塔夏季校园招聘备考题库附答案详解(突破训练)
- 2026广东江门市五邑通智能卡有限公司招聘1人备考题库及答案详解(有一套)
- 2026广东珠海市香洲凤凰幼教集团上冲园区招聘合同制教职工2人备考题库及参考答案详解一套
- GB/T 47364-2026肉牛营养需要量
- 肺结节早期筛查与预防措施
- (二模)拉萨市2026届高三第二次联考文科综合试卷(含答案)
- 养老院老人食物中毒应急预案演练脚本
- 国家义务教育质量监测八年级德育模拟试卷
- 初中生物学七年级下册新教材(北师大版2024)跨学科实践单元教学设计
- (2026版)发热待查诊治专家共识课件
- 超危大模板及支撑体系专项施工方案(专家论证修改后)2022
- 2025年安庆市大观区事业单位招聘考试试题及答案解析
- IG541 气体灭火系统巡检记录表
- 网络安全解决方案与实施计划
评论
0/150
提交评论