当前位置:   article > 正文

Python写一个超简单的用户系统_python设计简单系统

python设计简单系统

前言

        如标题所说,这是一个非常简单的程序,并不涉及任何高深的学问,更适合一些刚入手Python的新人研究一下基础内容的用法,此案列对于有些编程经验的人来讲可以说是过于简单,甚至是简陋。

本文涉及的知识点:列表、字典、用户输入、程序输出。

关于程序的一些设计:

相关的功能:用户登入,用户注册,用户信息修改

正文

首先我们来写程序的大体框架,然后我们再按照我们的需求往里面填充其他功能。

  1. user_name = [] # 声明一个列表来保存下面那个字典user_name_
  2. user_name_ = {
  3. 'name': '',
  4. 'password': ''
  5. } # 声明一个用来保存账号信息的字典
  6. user_id = -1 # 用户序列号
  7. def start(): # 程序开始界面
  8. print('----------用户登入程序----------')
  9. print('| 温馨提示:用户名不可以过长 |')
  10. print('| 密码请记牢,暂时不支持找回 |')
  11. print('------------------------------')
  12. user_selection()
  13. def user_selection(): # 用户选择需要进行的操作
  14. pass # pass用来占行,防止不写内容报错
  15. def log_in(): # 用户登入
  16. pass
  17. def sign_up(): # 用户注册
  18. pass
  19. def check_user_information(): # 用户信息检查
  20. pass
  21. def modify_information(): # 修改信息
  22. pass
  23. start() # 调用程序开始界面来显示信息

接下里我们在来完善用户选择检测、用户登入、及用户信息检查这三个界面,按照流程来是先打印界面——>用户做出选择——>登入或者注册;

首先是用户选择的代码

  1. def user_selection(): # 用户选择需要进行的操作
  2. selection = input('1.登入 2.注册 (输入数字即可,例如1): ')
  3. if selection == '1': # 判断是否为1
  4. log_in()
  5. elif selection == '2': # 判断是否为2,或者不是其中的任何选择
  6. sign_up()
  7. else:
  8. print('您输入的并不是1或者2,请重新输入!')
  9. user_selection()

用户选择为1则调用log_in()来继续用户登入行为,为2则是用户注册行为,不为1或2则提示错误并重新选择。

接下来是用户登入界面的代码了。

  1. def log_in(): # 用户登入
  2. username = input('请输入用户名: ')
  3. password = input('请输入密码: ')
  4. # 首先获取用户输入的用户名以及密码,然后传递check_user_information(username,password)
  5. check_user_information(username, password)
  6. # 在这里修改了一下用户信息检查的代码,加入了2个需要传递的参数。

然后就是检查的代码了

  1. def check_user_information(username_, password_): # 用户信息检查,username和password后面的_仅仅为了方便区分.
  2. global user_id # 引用函数外的变量
  3. for i in range(len(user_name)): # 遍历全部的用户信息
  4. if user_name[i]['name'] == username_ and user_name[i]['password'] == password_: # 如果登入成功
  5. print('登入成功')
  6. user_id = i # 成功获取用户序列
  7. break # 结束循环
  8. if not user_id == -1: # 通过user_id来判断是否成功登入,如果不等于-1则登入成功 if not 如果不 也可以写 if user_id != -1
  9. # 登入成功
  10. modify_information(user_id) # 进入信息修改界面来改账号或者密码,传入user_id方便查找
  11. else:
  12. # 登入失败
  13. print('账号密码错误或账号不存在。')
  14. user_selection() # 返回用户选择
  15. # user_name[i]['name'] 的意思是先获取 列表user_name[i] 所保存的字典user_name_,然后再查看字典里name的值

然后我们来完成用户注册的代码

  1. def sign_up(): # 用户注册
  2. username = input('请输入用户名: ')
  3. password = input('请输入密码: ')
  4. # 首先让用户输入要注册的账号和密码
  5. user_name_['name'] = username
  6. user_name_['password'] = password
  7. # 将账号密码先写入字典再写入列表
  8. user_name.append(user_name_)
  9. print('注册成功,即将返回选择界面')
  10. user_selection() # 接着再返回用户选择

最后就是用户信息修改了,超级简单

  1. def modify_information(user_id_): # 修改信息
  2. global user_id
  3. selection = input('1.修改账号 2.修改密码 3.退出登入 (输入数字即可,例如1):')
  4. if selection == '1':
  5. user_name[int(user_id_)]['name'] = input('输入新的账号') # user_id是字符串要int一下
  6. user_id = -1
  7. start() # 返回最开始
  8. elif selection == '2':
  9. user_name[int(user_id_)]['password'] = input('输入新的密码')
  10. user_id = -1
  11. start()
  12. elif selection == '3':
  13. user_id = -1
  14. start()
  15. else:
  16. print('您输入的似乎并不是其中的选项请重新输入')
  17. modify_information(user_id)

总结,非常简单,接下来贴出全部代码

  1. user_name = [] # 声明一个列表来保存下面那个字典user_name_
  2. user_name_ = {
  3. 'name': '',
  4. 'password': ''
  5. } # 声明一个用来保存账号信息的字典
  6. user_id = -1 # 用户序列号
  7. def start(): # 程序开始界面
  8. print('----------用户登入程序----------')
  9. print('| 温馨提示:用户名不可以过长 |')
  10. print('| 密码请记牢,暂时不支持找回 |')
  11. print('------------------------------')
  12. user_selection()
  13. def user_selection(): # 用户选择需要进行的操作
  14. selection = input('1.登入 2.注册 (输入数字即可,例如1): ')
  15. if selection == '1': # 判断是否为1
  16. log_in()
  17. elif selection == '2': # 判断是否为2,或者不是其中的任何选择
  18. sign_up()
  19. else:
  20. print('您输入的并不是1或者2,请重新输入!')
  21. user_selection()
  22. def log_in(): # 用户登入
  23. username = input('请输入用户名: ')
  24. password = input('请输入密码: ')
  25. # 首先获取用户输入的用户名以及密码,然后传递check_user_information(username,password)
  26. check_user_information(username, password)
  27. # 在这里修改了一下用户信息检查的代码,加入了2个需要传递的参数。
  28. def sign_up(): # 用户注册
  29. username = input('请输入用户名: ')
  30. password = input('请输入密码: ')
  31. # 首先让用户输入要注册的账号和密码
  32. user_name_['name'] = username
  33. user_name_['password'] = password
  34. # 将账号密码先写入字典再写入列表
  35. user_name.append(user_name_)
  36. print('注册成功,即将返回选择界面')
  37. user_selection() # 接着再返回用户选择
  38. def check_user_information(username_, password_): # 用户信息检查,username和password后面的_仅仅为了方便区分.
  39. global user_id # 引用函数外的变量
  40. for i in range(len(user_name)): # 遍历全部的用户信息
  41. if user_name[i]['name'] == username_ and user_name[i]['password'] == password_: # 如果登入成功
  42. print('登入成功')
  43. user_id = i # 成功获取用户序列
  44. break # 结束循环
  45. if not user_id == -1: # 通过user_id来判断是否成功登入,如果不等于-1则登入成功 if not 如果不 也可以写 if user_id != -1
  46. # 登入成功
  47. modify_information(user_id) # 进入信息修改界面来改账号或者密码,传入user_id方便查找
  48. else:
  49. # 登入失败
  50. print('账号密码错误或账号不存在。')
  51. user_selection() # 返回用户选择
  52. # user_name[i]['name'] 的意思是先获取 列表user_name[i] 所保存的字典user_name_,然后再查看字典里name的值
  53. def modify_information(user_id_): # 修改信息
  54. global user_id
  55. selection = input('1.修改账号 2.修改密码 3.退出登入 (输入数字即可,例如1):')
  56. if selection == '1':
  57. user_name[int(user_id_)]['name'] = input('输入新的账号') # user_id是字符串要int一下
  58. user_id = -1
  59. start() # 返回最开始
  60. elif selection == '2':
  61. user_name[int(user_id_)]['password'] = input('输入新的密码')
  62. user_id = -1
  63. start()
  64. elif selection == '3':
  65. user_id = -1
  66. start()
  67. else:
  68. print('您输入的似乎并不是其中的选项请重新输入')
  69. modify_information(user_id)
  70. start() # 调用程序开始界面来显示信息

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/697026
推荐阅读
相关标签
  

闽ICP备14008679号