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 set集合类型操作总结
Nov 07 Python
python将MongoDB里的ObjectId转换为时间戳的方法
Mar 13 Python
Python如何为图片添加水印
Nov 25 Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 Python
教你用一行Python代码实现并行任务(附代码)
Feb 02 Python
Window 64位下python3.6.2环境搭建图文教程
Sep 19 Python
Python虚拟环境库virtualenvwrapper安装及使用
Jun 17 Python
python爬虫使用requests发送post请求示例详解
Aug 05 Python
详解如何在pyqt中通过OpenCV实现对窗口的透视变换
Sep 20 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
Feb 22 Python
使用Python的开发框架Brownie部署以太坊智能合约
May 28 Python
详解Python中下划线的5种含义
Jul 15 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
php 8小时时间差的解决方法小结
2009/12/22 PHP
九个你必须知道而且又很好用的php函数和特点
2013/08/08 PHP
php 修改、增加xml结点属性的实现代码
2013/10/22 PHP
php实现图片文件与下载文件防盗链的方法
2014/11/03 PHP
搭建基于Docker的PHP开发环境的详细教程
2015/07/01 PHP
php根据日期或时间戳获取星座信息和生肖等信息
2015/10/20 PHP
Laravel框架实现修改登录和注册接口数据返回格式的方法
2018/08/17 PHP
如何实现动态删除javascript函数
2007/05/27 Javascript
js 匿名调用实现代码
2009/06/19 Javascript
JavaScript 学习笔记(九)call和apply方法
2010/01/11 Javascript
再谈javascript原型继承
2014/11/10 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
JavaScript html5 canvas绘制时钟效果
2016/03/01 Javascript
JS中frameset框架弹出层实例代码
2016/04/01 Javascript
简单实现js悬浮导航效果
2017/02/05 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
2019/06/10 Javascript
微信小程序上传图片并等比列压缩到指定大小的实例代码
2019/10/24 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
2020/07/11 Javascript
[02:36]DOTA2混沌骑士 英雄基础教程
2013/11/26 DOTA
[06:01]刀塔次级联赛top10第一期
2014/11/07 DOTA
常用python编程模板汇总
2016/02/12 Python
python去除字符串中的换行符
2017/10/11 Python
python中int与str互转方法
2018/07/02 Python
python设置值及NaN值处理方法
2018/07/03 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
Python enumerate函数功能与用法示例
2019/03/01 Python
零基础小白多久能学会python
2020/06/22 Python
通过代码实例了解Python异常本质
2020/09/16 Python
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
HTML5 解析规则分析
2009/08/14 HTML / CSS
为智能设备设计个性化保护套网站:caseable
2017/01/05 全球购物
师范生自荐信范文
2013/10/06 职场文书
县委班子四风对照检查材料思想汇报
2014/09/29 职场文书
幼儿园六一儿童节活动总结
2015/02/10 职场文书
企业办公室主任岗位职责
2015/04/01 职场文书
Spring Cloud Gateway去掉url前缀
2021/07/15 Java/Android