• Python实现简单用户注册信息管理系统


    运行效果:

     

    注意:运行前请在同一目录下创建一个userdata.bin用于保存用户数据

    源代码:

      1 # coding:utf-8
      2 '''
      3 用户注册信息管理系统
      4 功能包括:
      5     1.查看全部已注册用户信息
      6     2.查找用户信息
      7     3.修改用户信息
      8     4.删除用户信息
      9     5.添加新用户
     10     6.将用户信息存入文件
     11 每个注册用户的信息用对象表示,程序启动时,自动载入文件中保存的用户信息
     12 程序启动后,显示操作菜单,并根据选择执行不同的操作
     13 各种菜单操作定义为函数,调用函数完成对应操作
     14 '''
     15 '''
     16 导入pickle模块中的dump、load方法
     17 dump方法将对象写入文件,load方法从文件中载入对象
     18 '''
     19 
     20 from pickle import dump,load
     21 
     22 ##定义user类,实例对象的userName属性存储用户名,passWord属性存储登录密码
     23 
     24 class user:
     25     #实例化对象,默认是None
     26     def __init__(self,userName=None,passWord=None):
     27         self.userName=userName
     28         self.passWord=passWord
     29 
     30     #update方法修改用户名和登录密码
     31     def update(self,userName,passWord):
     32         self.userName=userName
     33         self.passWord=passWord
     34 
     35     #__repr__()方法定义对象打印格式
     36     def __repr__(self):
     37         return 'userName=%s	passWord=%s'%(self.userName,self.passWord)
     38 
     39 ##函数showAll()显示当前已注册用户信息########################
     40 def showAll():
     41     global userList
     42     if len(userList)==0:
     43         print('	当前无注册用户')
     44     else:
     45         print('	当前已注册用户信息如下:')
     46         n=0
     47         for x in userList:
     48             n+=1
     49             print('	%s. '%n,x)
     50         input('
    	按Enter键继续...
    ')
     51 
     52 
     53 ##函数check_update()执行查找、修改或删除操作######################
     54 def check_update():
     55     global userList
     56     userName=input('	请输入要查找的用户名:')
     57     index=find(userName)
     58     if index==-1:
     59         print('	%s不存在!'%userName)
     60     else:
     61         #用户名已注册,执行修改或删除操作
     62         print('	%s 已经注册!'%userName)
     63         print('	请选择操作:')
     64         print('	 1.修改用户')
     65         print('	 2.删除用户')
     66         op=input('	请输入序号选择对应操作:')
     67         if op=='2':
     68             #删除用户
     69             del userList[index]
     70             print('
    	 已成功删除用户!')
     71         else:
     72             #修改用户信息
     73             userName=input('	请输入新的用户名:')
     74             if userName=='':
     75                 print('	用户名输入无效!')
     76             else:
     77                 #检查是否已存在同名的注册用户
     78                 if find(userName)>-1:
     79                     print('	你输入的用户名已经使用!')
     80                 else:
     81                     passWord=input('	请输入新用户登录密码:')
     82                     if passWord=='':
     83                         print('	登录密码输入无效!')
     84                     else:
     85                         userList[index].update(userName,passWord)
     86                         print('
    	已成功修改用户!')
     87     input('
    	按Enter键继续...
    ')
     88 
     89 
     90 ##函数addUser()添加新用户########################
     91 def addUser():
     92     global userList
     93     userName=input('	请输入用户名:')
     94     if userName=='':
     95         print('	用户名输入无效!')
     96     else:
     97         #检查是否已存在同名的注册用户
     98         if find(userName)>-1:
     99             print('您输入的用户名已经使用,请重新添加用户!')
    100         else:
    101             passWord=input('	请输入新用户登录密码:')
    102             if passWord=='':
    103                 print('	登录密码输入无效!')
    104             else:
    105                 userList.append(user(userName,passWord))
    106                 print('	已成功添加用户!')
    107     input('
    	按Enter键继续........')
    108 
    109 ##函数find(namekey)查找是否存在用户名为namekey的注册用户
    110 def find(namekey):
    111     global userList
    112     #如果注册用户列表userList中存在namekey的用户,则返回位置,否则返回-1
    113     n=-1
    114     for x in userList:
    115         n+=1
    116         if x.userName==namekey:
    117             break
    118     else:
    119         n=-1
    120     return n
    121 
    122 ##函数save()将当前用户信息写入文件永久保存
    123 def save():
    124     global userList
    125     #将用户写入文件永久保存
    126     myfile=open(r'userdata.bin','wb')
    127     global userList
    128     dump(userList,myfile)
    129     myfile.close()
    130     print('	已成功保存用户信息')
    131     input('
    	按Enter键继续......')
    132 
    133 ##程序启动时,载入文件中的用户数据
    134 myfile=open(r'userdata.bin','rb')
    135 x=myfile.read(1)
    136 if x==b'':
    137     userList=list()
    138 else:
    139     myfile.seek(0)
    140     userList=load(myfile)
    141 myfile.close()
    142 
    143 #以死循环显示系统操作菜单,直到选择退出系统
    144 while True:
    145     print('用户注册信息管理系统')
    146     print('	1. 显示全部已注册用户')
    147     print('	2. 查找/修改/删除用户信息')
    148     print('	3. 添加新用户')
    149     print('	4. 保存用户数据')
    150     print('	5. 退出系统')
    151     no=input('请输入序号选择对应菜单:')
    152     if no=='1':
    153         showAll()
    154     elif no=='2':
    155         check_update()
    156     elif no=='3':
    157         addUser()
    158     elif no=='4':
    159         save()
    160     elif no=='5':
    161         print('谢谢使用,系统已退出')
    162         break
  • 相关阅读:
    Android开发系列之ListView用法
    自省
    fake feeling ?
    我心中的天使
    2020.6.16
    python面试题
    tcp
    Short + skip + limit
    01_pyttsx3_将文本文字转为语音播放
    mongo_Linux下不进入数据库查数据
  • 原文地址:https://www.cnblogs.com/yijiahao/p/11909523.html
Copyright © 2020-2023  润新知