1、文件操作(介绍):
(1)什么是文件:计算机文件属于文件的一种,与普通文件载体不同,计算机文件是以计算机硬盘为载体存储在计算机上的信息集合。
(2)文件的作用:就是把一些存储放起来,可以让程序下一次执行的时候直接使用你,而不必重新制作一份,省时省力。
2、文件的打开与关闭
如果想用word编写一份简历,应该有哪些流程呢?
* 1、打开word软件,新建一个word文件
* 2、写入个人简历信息
* 3、保存文件
* 4、关闭word软件
同样,在操作文件的整体过程与使用word编写一份简历的过程是很相似的
* 1、打开文件,或者新建一个文件
* 2、读写数据
* 3、关闭文件
(1)打开文件:在Python中,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件。open(文件名,访问模式)
访问模式说明:1、(r)以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式 。
2、(w)打开一个文件只用于写入。如果文件已经存在则将其覆盖。如果文件不存在,创建新文件。
3、(a)打开一个文件用于追加。如果文件已经存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果文件不存在,会创建新的文件写入。
3、(rb)以二进制格式打开一个文件用于只读。文件指针将会放到文件的开头,这是默认模式。
4、(wb)以二进制格式打开一个文件只用于写入。如果文件已经存在则将其覆盖,如果该文件不存在,创建新文件。
5、(ab)以二进制格式打开一个吻见用于追加,如果文件已经存在,文件指针将会放在文件末尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件写入。
6、(r+)打开一个文件用于读写。文件指针将会放在文件的开头。
7、(w+)打开一个文件用于读写。如果该文件已经存在则将其覆盖,如果文件不存在,创建新的文件。
8、(a+)打开一个文件用于读写。如果文件已经存在,文件指针将会放到文件的末尾。文件打开时候会追加模式。文件如果不存在,创建新文件用于读写。
9、(rb+)以二进制格式打开一个文件用于读写,文件指针将会放在文件开头。
10、(wb+)以二进制格式打开一个文件用于读写。如果该文件已经存在则将其覆盖。如果文件不存在,创建新的文件。
11、(ab+)以二进制格式打开一个文件用于追加。如果文件已经存在,文件指针将会放在文件末尾。如果该文件不存在,创建新文件用于读写。
(2)关闭文件:close()
3、文件的读写
1、写数据:使用write()可以完成项文件写入数据
2、读数据(read)读单个长度
使用read(num)可以从文本读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件所有的数据。
f = open('test.txt', 'r')
content= f.read(5)
print(content)
print("*"*30)
content= f.read()
print(content)
f.close()
读数据(readlines)读所有行
f = open('test.txt','r')
content = f.readlines()
print(type(content))
i=1
for temp in content:
print('%d:%s'%(i,temp))
i+=1
f.close()
读数据(readline)读一行
f = open('test.txt', 'r')
content = f.readline()
print("1:%s"%content)
content = f.readline()
print("2:%s"%content)
f.close()
4 、文件的定位读写
1 、获取当前读写的位置
在读写文件的过程,如果想知道当前的位置,可以使用tell()来获取
# 打开一个已经存在的文件
f = open("test.txt", "r")
str = f.read(3)
print "读取的数据是 : ", str
# 查找当前位置
position = f.tell()
print "当前文件位置 : ", position
str = f.read(3)
print "读取的数据是 : ", str
# 查找当前位置
position = f.tell()
print "当前文件位置 : ", position
f.close()
2、定位到某个位置
如果在读写文件的过程,需要从另一个位置进行操作的话,可以使用seek(),seek(offset,from)有2个参数
* offset:偏移量
* from:方向
* 0:表示文件开头
* 1:表示当前位置
* 2:表示文件末尾
demo:把位置设置为:从文件开头,偏移5个字节
# 打开一个已经存在的文件
f = open("test.txt", "r")
str = f.read(30)
print "读取的数据是 : ", str
# 查找当前位置
position = f.tell()
print "当前文件位置 : ", position
# 重新设置位置
f.seek(5,0)
# 查找当前位置
position = f.tell()
print "当前文件位置 : ", position
f.close()
demo:把位置设置为:离文件末尾,3字节处
# 打开一个已经存在的文件
f = open("test.txt", "r")
# 查找当前位置
position = f.tell()
print "当前文件位置 : ", position
# 重新设置位置
f.seek(-3,2)
# 读取到的数据为:文件最后3个字节数据
str = f.read()
print "读取的数据是 : ", str
f.close()
5、文件的重命名、删除
1、文件的重命名
os模块中的rename()可以完成对文件的重命名操作,rename(需要修改的文件名,新的文件名)
2、删除文件
os模块中的remove()可以完成对文件的删除文件,remove(待删除的文件名)