Python实现密码薄文件读写操作


Posted in Python onDecember 16, 2019

制作一个"密码薄",其可以存储一个网址,和一个密码(如 123456),请编写程序完成这个“密码薄”的增删改查功能,并且实现文件存储功能

D:\pytest_day\mimab\wenjian.py

class WenJian():
  def __init__(self,lujing,xieru):
    self.lujing=lujing
    self.xieru=xieru
 
  #读文件
  def read_file(self):
    #打开文件
    with open(self.lujing,'r') as f:
      content = []
      # 读取内容
      for i in f:
        i=i.split('\n')
        content.append(i[0])
    return content
 
  #写文件
  def write_file(self):
    # f = open(self.lujing, 'w')
    with open(self.lujing, 'w') as f:
      for i in self.xieru:
        f.writelines(i+'\n')
 
  #关闭文件
  def close_file(self):
    open(self.lujing).close()

D:\pytest_day\mimab\base.py

from mimab.wenjian import WenJian
class Base_Wenjian(WenJian):
  def __init__(self,lujing,xieru):
    WenJian.__init__(self,lujing,xieru)
 
  #添加
  def add(self):
    self.xieru = WenJian.read_file(self)
    url=input("请输入网址:")
    if url not in self.xieru:
      pwd=input("请输入密码:")
      self.xieru.append(url+' '+pwd)
      WenJian.write_file(self)
      WenJian.close_file(self)
    else:
      print("您输入的网址已经存在")
  #删除
  def dell(self):
    self.xieru = WenJian.read_file(self)
    url = input("请输入要删除网址:")
    for i in self.xieru:
      a=i.split()
      if url == a[0]:
        self.xieru.remove(i)
        WenJian.write_file(self)
        WenJian.close_file(self)
        print("删除成功!")
        break
      else:
        print("您输入的网址不存在")
  #编辑
  def edit(self):
    self.xieru = WenJian.read_file(self)
    url = input("请输入要编辑网址:")
    for j in range(len(self.xieru)):
      a=self.xieru[j].split()
      if url == a[0]:
        newurl = input("请输修改后的网址:")
        newpwd = input("请输修改后的密码:")
        self.xieru[j]=newurl+' '+newpwd
        WenJian.write_file(self)
        WenJian.close_file(self)
        print("修改成功!")
        break
      else:
        print("您输入的网址不存在")
 
  #查找
  def find(self):
    self.xieru = WenJian.read_file(self)
    url = input("请输入要查找的网址:")
    for j in range(len(self.xieru)):
      a=self.xieru[j].split()
      if url == a[0]:
        print(self.xieru[j])
        WenJian.write_file(self)
        WenJian.close_file(self)
        break
      else:
        print("输入的网址不存在")

D:\pytest_day\mimab\zsgc.py

from mimab.base import Base_Wenjian
class Wenjian_Caozuo(Base_Wenjian):
  def __init__(self,lujing,xieru,index):
    Base_Wenjian.__init__(self,lujing,xieru)
    self.index=index
 
  def zsgc(self):
    if self.index == '1':
      #添加
      Base_Wenjian.add(self)
 
    elif self.index == '2':
      #删除
      Base_Wenjian.dell(self)
 
    elif self.index == '3':
      #修改
      Base_Wenjian.edit(self)
 
    elif self.index == '4':
      #查找
      Base_Wenjian.find(self)
 
    elif self.index == '5':
      print("欢迎下次使用!!!")
      exit()
    else:
      print("输入操作编号格式不对")

D:\pytest_day\mimab\domain.py

from mimab.zsgc import Wenjian_Caozuo
show_txt="""1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入功能编号:"""
#文件路径
lujing="mimabo.txt"
#初始化列表
xieru=[]
 
while True:
  index=input(show_txt)
  hahaha=Wenjian_Caozuo(lujing,xieru,index)
  hahaha.zsgc()
D:\pytest_day\mimab\mimabo.txt

www.baidu.com 123456
www.wangyi.com 258369

运行:

1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:1
请输入网址:baidu
请输入密码:1
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:1
请输入网址:qq
请输入密码:2
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:1
请输入网址:163
请输入密码:3
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:2
请输入要删除网址:baidu
删除成功!
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:2
请输入要删除网址:qq
删除成功!
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:2
请输入要删除网址:163
删除成功!
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:1
请输入网址:baidu
请输入密码:1
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:3
请输入要编辑网址:baidu
请输修改后的网址:www.baidu.com
请输修改后的密码:123456
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:1
请输入网址:www.wangyi.com
请输入密码:258369
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:4
请输入要查找的网址:www.baidu.com
www.baidu.com 123456
1.添加网址密码
2.删除网址密码
3.修改网址密码
4.查询网址密码
5.退出本系统
请输入:5
欢迎下次使用!!!

总结

以上所述是小编给大家介绍的Python实现密码薄文件读写操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python使用socket进行简单网络连接的方法
Apr 29 Python
一个基于flask的web应用诞生 flask和mysql相连(4)
Apr 11 Python
Python 私有函数的实例详解
Sep 11 Python
Django项目中包含多个应用时对url的配置方法
May 30 Python
python 列表降维的实例讲解
Jun 28 Python
Python爬取商家联系电话以及各种数据的方法
Nov 10 Python
Python元组常见操作示例
Feb 19 Python
详解python websocket获取实时数据的几种常见链接方式
Jul 01 Python
Python Pandas 获取列匹配特定值的行的索引问题
Jul 01 Python
Python 中Django安装和使用教程详解
Jul 03 Python
pandas计算最大连续间隔的方法
Jul 04 Python
Python分析微信好友性别比例和省份城市分布比例的方法示例【基于itchat模块】
May 29 Python
如何基于Python实现电子邮件的发送
Dec 16 #Python
Python如何基于selenium实现自动登录博客园
Dec 16 #Python
Python正则表达式急速入门(小结)
Dec 16 #Python
如何基于Python制作有道翻译小工具
Dec 16 #Python
django框架单表操作之增删改实例分析
Dec 16 #Python
Python生成个性签名图片获取GUI过程解析
Dec 16 #Python
Python列表切片常用操作实例解析
Dec 16 #Python
You might like
把从SQL中取出的数据转化成XMl格式
2006/10/09 PHP
php源码 fsockopen获取网页内容实例详解
2016/09/24 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
JS 时间显示效果代码
2009/08/23 Javascript
Node.js开发指南中的简单实例(mysql版)
2013/09/17 Javascript
nodejs中转换URL字符串与查询字符串详解
2014/11/26 NodeJs
使用jsonp完美解决跨域问题
2014/11/27 Javascript
DEDECMS如何为文章添加HOT NEW标志图片
2015/08/14 Javascript
浅谈node.js中async异步编程
2015/10/22 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
2016/11/04 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
浅谈angular4.0中路由传递参数、获取参数最nice的写法
2018/03/12 Javascript
js实现简单贪吃蛇游戏
2020/05/15 Javascript
封装 axios+promise通用请求函数操作
2020/08/11 Javascript
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
Python数据类型详解(四)字典:dict
2016/05/12 Python
Python中shutil模块的常用文件操作函数用法示例
2016/07/05 Python
win7上python2.7连接mysql数据库的方法
2017/01/14 Python
利用Python将文本中的中英文分离方法
2018/10/31 Python
Python文件如何引入?详解引入Python文件步骤
2018/12/10 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
HTML5标签与HTML4标签的区别示例介绍
2013/07/18 HTML / CSS
canvas实现扭蛋机动画效果的示例代码
2018/10/17 HTML / CSS
入党积极分子学习两会心得体会范文
2014/03/17 职场文书
《大江保卫战》教学反思
2014/04/11 职场文书
小学班主任培训方案
2014/06/04 职场文书
井冈山红色之旅心得体会
2014/10/07 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
医生辞职信范文
2015/03/02 职场文书
校运会加油稿大全
2015/07/22 职场文书
2015年支教教师工作总结
2015/07/22 职场文书
建议书的格式及范文
2015/09/14 职场文书
家访教师心得体会
2016/01/23 职场文书
XX部保密工作制度范本
2019/08/27 职场文书
解决golang在import自己的包报错的问题
2021/04/29 Golang
Python 类,对象,数据分类,函数参数传递详解
2021/09/25 Python