栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python存档(使用.txt格式)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python存档(使用.txt格式)

有的小伙伴在使用python的时候总是想实现简单的存档功能。我查阅了一下网上的资料,发现很多教程都是把方法列举出来,然后便一笔带过,导致有些python小白们不知其原理,那么接下来我就介绍python中最简单易懂的(对于我个人来说).txt格式存档法。

首先我们要导入库

from os import close, read
#这里的close是关闭文件,read是读取文件

然后新建一个.txt文件

wj=open('C:\Users\Public\Documents\存档.txt','a')
#这里的'wj'是可以改变的,文件路径尽量选择C盘下的公共文件夹,毕竟如果换台电脑情况就不一样了

 一定记住要在文件后面加上.txt后缀名!!!

有的人可能会有疑惑了,这个'a'是什么意思呢?

其实很简单啊,大家都知道在print()输出中,加上'n'就是换行输出,那么在这里,'a'也代表一种模式,具体的代码很多,就不一一详细展开了,这里给大家整理一个简单的表格(不过隔壁也有,还更加明了,如果看完不懂得可以去看看)

'r'只读模式,不可使用write('写入内容'),且文件必须已存在
'a'如果文件不存在,则创建一个新的文件;如文件已存在则将输入光标放在文本末尾
'w'只写模式,故名思意。如果文件不存在,则创建一个新的文件;如文件已存在则将文件内的文本清空,重新写入

使用'a'是为了创建一个新文件,接下来为了防止意外发生,我们要关闭文件

wj.close()
#如果你在前面改了这个wj=opne(),那么你现在也应该用你改过的

然后再次打开文件,不过这次我们用'r'模式

wj=open('C:\Users\Public\Documents\存档.txt','r')

这时候你就可以开始输出语句了,比如一句开始语,有两种方式输出文件里的内容

#1
cd=wj
print('当前存档'+cd+'n')
#给cd赋值,这样更加有利于重复使用
#2
print('当前存档'+wj.read()+'n')

记得把文件关闭!!!

wj.close()

接下来我们询问需要的操作,如新存档,继续当前存档等等

xz=input('你想要?n1.新存档n2.继续n')

这里要弄清楚,新存档是清空已存在的内容,刚刚好用上前面表格里的'w'只写模式;而继续是不需要对文件进行更改的,只需要反馈一下就可以了

if xz=='1':
   wj=open('C:\Users\Public\Documents\存档.txt','w')
   wj.write('1')
#write('1')就是往文件里写入1这个数字,你也可以自定义里面的内容
   wj.close()
elif xz=='2':
     print('继续')

下面你就可以写自己的代码啦,在需要存档的时候只需要插入这一段代码就可以了

wj=open('C:\Users\Public\Documents\存档.txt','w')
wj.write('存档内容')
wj.close()
wj=open('C:\Users\Public\Documents\存档.txt','r')
cd=wj.read()
wj.close()
#不要嫌代码多,要是这里的write()和read()放在一起,是会报错的哦

下面是我写的一个示例

from os import close,read
import time   #这个库纯属我用来装饰的,对应下面的time.sleep(),意思是等待n秒
wj=open('C:\Users\Public\Documents\存档.txt','a')
wj.close()
wj=open('C:\Users\Public\Documents\存档.txt','r')
print('当前存档'+wj.read()+'n')
wj.close
xz=input('你想要?n1.新的开始n2.继续n')
if xz=='1':
   wj=open('C:\Users\Public\Documents\存档.txt','w')
   wj.write('1')
   wj.close()
elif xz=='2':
     print('继续')
wj=open('C:\Users\Public\Documents\存档.txt','r')
cd=wj.read()
#输出时不能直接print(wj),而是要用其它字母赋值后再来输出,不然会报错
wj.close()
print('加载中...n')
if cd=='1':
   print('测试1')
   print('存档')
   wj=open('C:\Users\Public\Documents\存档.txt','w')
   wj.write('2')
   wj.close()
   wj=open('C:\Users\Public\Documents\存档.txt','r')
   cd=wj.read()
   wj.close()
if cd=='2':
   print('测试2')
   time.sleep(5)
   exit()

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/883220.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号