1. 文件操作介绍
1.1 文件的作用
- 一个程序在运行过程中用了九牛二虎之力终于计算出了结果,试想一下如果不把这些数据存放起来,相比重启电脑之后,“哭都没地方哭了”。 默认数据是加载到内存中,结果也是保存到内存中, 程序执行结束,所有的数据释放。
1.2 文件的打开
- 在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件。
open(文件名,访问模式) e.g. f = open(‘test.txt’, ‘w’)
如果文件不存在那么创建,如果存在那么就先清空,然后写入数据
1.3 文件操作
1.3.1 文件操作基本
"""
mode:
r: 只能读文件
w: 只能写入(清空文件内容)
a+: 读写(文件追加写入内容)
"""
#1.打开文件
f = open('hello.txt',mode='a') ##文件是自己建立在当前目录,w写,a追加
#2.文件读写操作
f.write('java\n')
#3.关闭文件(核心:打开之后必须关闭)
"""
方法一:
调用close()方法关闭文件。文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源,
并且操作系统同一时间能打开的文件数量也是有限的:
"""
f.close()
1.3.2 with和seek
"""
with语句:python中的with语句使用于对资源进行访问的场合,
保证不管处理过程中是否发生错误或者异常都会自动执行规定的(“清理”)操作,
释放被访问的资源,比如有文件读写后自动关闭、线程中锁的自动获取和释放等。
seek:seek(offset, from)有2个参数: offset:偏移量 from:方向
0:表示文件开头;
1:表示当前位置;
2:表示文件末尾
1). 把位置设置为:从文件开头,偏移5个字节
2). 把位置设置为:文件最开始
3). 把位置设置为:文件最末尾
"""
with open('hello.txt','w+') as f: #w+先清空在写
f.write('hello westos\n') ##写入文件 #先清空原来的hello,写入hello westos
f.seek(0,0) ##移动指针到文件最开始
print("当前指针的位置:",f.tell())
f.seek(0,2) ##移动指针到文件末尾
print("当前指针的位置:", f.tell())
print(f.read()) ##读取文件内容