day15数据持久化
1数据持久化
1)背景:程序中数据默认保存在内存中的,保存在运行内存中的数据在程序运行后销毁
2)数据持久化又叫数据本地化,将程序中的数据保存在本地中
3)常见的数据持久化都是数据库
2文件操作
1)基本流程:
打开文件–》操作文件(读,写)–》关闭文件
2)打开文件
open(file,mode=‘r’,*,encoding=‘utf-8’)–以指定的方式打开文件,并且有返回值
1)file–打开文件的路径(可以是绝对路径也可以是相对路径)
2)mode-文件打开的方式,由2组值来决定打开后可以干什么,同时决定操作文件的时候,数据类型
第一组:r,w,a
r:read–只读
w:write–只写(覆盖原内容)
a:append–只写(在后面加)
#./可以省略
# open('./text/tex1.py')
# open('text/tex1.py')
#r只读
# f=open('./text/test1.txt','r')
# f.read()
#w只写
# f=open('./text/test1.txt','w')
# f.write('123qwe')
#a只写
# f=open('./text/test1.txt','a')
# f.write('123123')
第二组:t,b
t:字符串-----word,txt,py,doc
b:字节(二进制数据)-----图片,视频,音频
f=open('./text/test1.txt','rt')
# result=f.read()
# print(type(result)) #<class 'str'>
# f.write('200')
#b读写类型是字节
# f=open('./text/test1.txt','rb')
# result=f.read()
# print(type(result)) #<class 'bytes'>
打开文本文件可以用t打开,也可以用b打开
二进制文件只能用b打开
使用时,每一组必须选一个,二组没选是默认t
3)encoding–文件编码方式()只有t方式打开的时候需要用
一般赋值是utf-8
3操作文件
1读操作
文件对象.read()–从读写文职开始到文件结束()
文件对象.readline()–从读写位置到这一行结束
f=open('./text/test1.txt',encoding='utf-8')
result=f.readlines(19)
print(result)
print('======')
result=f.read()
f.seek(0) #把读写位置变道文件开头
print(result) #空值
4关闭文件
文件对象.close
#防止忘记关闭文件的方法1:
result=open(’./text/test1.txt’).read()
print(result)
#防止忘记关闭文件的方法2:
with open(’./text/test1.txt’)as f:
result=f.read()
print(result)