在计算机中,我们最先想到是什么?游戏、电影、软件、程序、音乐、图片等等。但是大家有没有想到其实他们都有一个个都属于文件,这就是Linux系统中一切皆文件的来源。
平常我们操作文件的流程一般为:创建文件---》对文件内容进行读取、写入、删除、修改等操作--->关闭并保存文件
那么python中,是怎么操作文件的呢?
一、创建文件对象
在python中内置了文件对象,通过open()函数可以进行文件的创建和打开。
open(file[,mode='r',[buffering=-1]],encoding=[])
各参数的主要含义如下:
(1) 参数file指定要打开或者创建的文件名称,如果该文件不存在当前目录,则需要明确指出绝对路径。
(2) 参数mode指定打开文件后的处理方式,其中包括:读模式、写模式、追加模式、二进制模式、文本模式、读写模式等。
(3) 参数buffering指定读写文件的缓冲模式,数值0表示不缓存,数值为1表示使用行缓存模式,大于1表示缓冲区的大小,默认值为-1,二进制文件和非交互文本文件以固定大小块为缓冲单位。
(4) 参数encoding指定对文本进行编码和解码的方式。
一般文件操作包括:读取、写入、追加、二进制模式、文本模式、读写模式等
二、文件的读取
我们有时需要加载文本中的某行或者全部内容,此时就需用到文本的读取操作
r:读模式(默认模式可以省略),如果文件不存在则抛出异常;
+:读,写模式(可与其他模式组合使用)
python中读取一般用到的函数有:
readable() 测试文件是否可读
read([size]) 从文件中读取size字符;如果省略则表示读取所有内容
readline() 从文本中读取一行内容作为结果返回
readlines() 把文本文件中的每行文本作为一个字符串存入列表,返回该列表
也可以利用for循环,读取文件中的内容
三、文件的写入
如果需要向文件中写入内容,在打开文件时就需要指定文件的打开模式为写模式,根据不同的开发需求选取不同的写入模式:
w:写入模式,如果文件已经存在,先清空文件内容;如果文件不存在,则创建文件。
x:写入模式,创建新文件,如果文件已经存在则抛出异常;
a:追加模式也是写入模式的一种,不覆盖文件的原始内容。
python中写入一般用到的函数有:
writable(s) : 测试文件是否可写;
write(s) : 将字符串s的内容写入文件;
四、关闭文件对象
当对文件内容操作完以后,一定要关闭文件对象,f.close(),这样才能保证所做的任何修改都确实保存到了文件中。