文件
文件的介绍
在计算机中,一个文件由3部分组成,分别是文件保存的路径(位置)、文件类型和文件内容
文件的编码方式
业界协会统一创建了Unicode(统一码)
操作文件
文档的操控通常包含3个步骤,即打开文件、执行文件和关闭文件,在启用代码的时候也要遵守
打开文件
在python中通常使用open()函数来打开一个文件,形式如下:
open(file,mode='r',buffering=-1,encoding=None,errors=None,newline=None,closefd=True,opener=None)
作用:打开一个文件。这里的打开材料是与文件建立通道并获取处理资料的权限
注意:不能在利用代码执行文件时,还通过操作系统操控材料,否则会造成冲突
参数file:要求打开的文件路径(),其数据类型为字符串类型
参数mode:指明文件打开的模式,文件常用的几种打开模式有:
'r':只读模式。如果计算机中此文件不存在则会出现异常错误;如果此文件存在则只允许对文件进 行读取操控
'w':覆盖写模式。只允许对文件进行写入操作,如果计算机中此文件已存在,则先清除此文件中的内容再写入;如果此文件不存在,就创建一个新文件再写入
'a':追加写模式。只允许对文件进行写入操作,如果计算机中存在此文件,则在该档案的末尾继续写入(不删除文件原来的内容);如果此记录不存在,就创建一个新文件再写入
参数encoding:表示需要打开文件的编码方式,在文本模式下有效。默认编码方式与平台相关,通常为'cp936'编码方式,是GBK编码方式的一种,中文的编码方式是UTF-8
注意:利用open函数仅仅是打开文件,并不会读取文件内部的字符信息,同时不要忘记写f.close
注意:在字符串前面加上r表示对字符串不进行转义
open()函数的复合写法
为了避免用户因忘记运用close()方法关闭文档而导致的程序异常等问题,形式如下:
with open(参数)as 变量名:(注意冒号)
with一种上下文管理器,可以自动管理文件,无需再使用close()方法来进行关闭操作就是是python中的保留字,
as是python中的保留字,与with结合使用
读取文件
read()方法:文件对象.read(size=-1)
功能:从文件中读取size个字符的内容,默认读取全部内容
参数size:从文件中读取size个字符的内容,默认读取全部内容
返回值:是字符串类型
readline()技巧:readline(size=-1)
功能:从文件中读取一行内容
参数size:默认从文件读取一行内容,如果size为其他数值,则读取该行前size个字符
返回值:是字符串类型
readlines()方法:readlines(hint=-1)
机制:从文件中读取所有行内容,以列表的形式返回,每行内容为列表中的第一个元素
参数hint:获取所在行内容的hint字符。例如第一行有5个字符,hint=5,就只会读取第一行的内容(hint<=5时都只会读取第一行的内容)。如第二行有5个字符,hint=6,会读取第一行第二行的内容(5<=hint<=11)时会读取前两行的内容
这三种手段都有各自适用的场景,read()方法适用于文件不大的情况,当文件较大时,使用readline()方法,readlines()方法,能减少计算机卡顿或宕机的状况
当发现输出内容存在换行是因为print()函数在每次执行后都会在末尾输出一个换行符,而记录内容中也有换行。这种情况下行通过print(line,end='')设置print()不换行的形式使输出结果和文件内容保持一致
写入文件
write()方法:write(text)
功能:把字符串text写入资料
参数text:表示要求写入的信息
返回值:返回写入的字符数(字符串的长度)
writelines()方法:writelines(lines)
作用:把字符串列表(列表中的元素均为字符串)写入文件,且不添加换行符
参数lines:字符串列表
返回值:None,表示空
文件的读取位置和路径
调整档案的读取位置
当读取到文件末尾,需要跳转到文件开头重新读取时;或当写入到文件末尾,需要重新在文件开头写入内容时,可以使用seek()方法。使用形式如下:
seek(cookie,whence=0)
功能:把文档指针(用于指明记录读取的位置)移动到新的位置
参数cookie:表示相对于whence位置的偏移量,如果为整数表示向右偏移,要是是负数表示向左偏移。一个汉字的偏移量是3
参数whence:表示文件指针设定的位置,默认值为0,表示从文件开头处开始计算,值为1表示从当前位置开始计算,值为2表示从文件结尾处开始计算
绝对路径和相对路径
绝对路径表示从磁盘的根目录开始到目标文件的路径。
相对路径表示相对于当前记录的位置到目标资料的位置
readme.txt文件的相对路径如./project_1/readme.txt
开头的“ . ”表示从当前路径出发
相对路径中的“ . ”表示父目录,即上一级目录
CSV文件
CSV资料是一种用逗号分隔式字符文件,可能被大部分的软件直接识别
标准的CSV文件,才可以被EXCEL打开就是CSV文件的特点是每个信息之间应用英文逗号分隔开,且拓展名为.CSV,该文件才
通过除TXT文件、CSV文件,open()函数还能够读取其他类型的字符文件,如HTML记录,python代码档案
项目案例一:读取中国十二时辰.csv文件

计划案例二:完成整理HTML网页内容


浙公网安备 33010602011771号