Python基础:实现简易用户登录注册系统
本文面向Python初学者,展示如何仅使用列表、字典、用户输入和输出功能,构建一个包含登录、注册及信息修改功能的简易用户系统。文章通过分步代码解析,详细讲解了程序框架搭建、界面交互逻辑及核心功能实现,适合无深厚编程经验的新人理解基础语法与流程控制。
前言
正如此前标题所述,这是一个极其简单的程序示例,不涉及任何复杂的高深理论。该案例主要适合刚开始接触Python的新手,用于研究基础内容的用法。对于具备一定编程经验的人员而言,此案例可能显得过于简单甚至简陋。
本文所涉及的知识点主要包括:列表、字典、用户输入以及程序输出。
关于程序的一些设计思路如下:
相关功能包括:用户登录、用户注册以及用户信息修改。

正文
首先编写程序的大体框架,随后再根据具体需求向其中填充其他功能模块。
user_name = [] # 声明一个列表来保存下面那个字典user_name_
user_name_ = {
'name': '',
'password': ''
} # 声明一个用来保存账号信息的字典
user_id = -1 # 用户序列号
def start(): # 程序开始界面
print('----------用户登入程序----------')
print('| 温馨提示:用户名不可以过长 |')
print('| 密码请记牢,暂时不支持找回 |')
print('------------------------------')
user_selection()
def user_selection(): # 用户选择需要进行的操作
pass # pass用来占行,防止不写内容报错
def log_in(): # 用户登入
pass
def sign_up(): # 用户注册
pass
def check_user_information(): # 用户信息检查
pass
def modify_information(): # 修改信息
pass
start() # 调用程序开始界面来显示信息接下来完善用户选择检测、用户登录及用户信息检查这三个界面。按照流程,先打印界面,然后由用户做出选择,最后执行登录或注册操作。
以下是用户选择部分的代码实现。
def user_selection(): # 用户选择需要进行的操作
selection = input('1.登入 2.注册 (输入数字即可,例如1): ')
if selection == '1': # 判断是否为1
log_in()
elif selection == '2': # 判断是否为2,或者不是其中的任何选择
sign_up()
else:
print('您输入的并不是1或者2,请重新输入!')
user_selection()当用户选择为1时,调用log_in()函数以继续执行用户登录行为;若选择为2,则执行用户注册行为;若输入既不是1也不是2,则提示错误并要求重新选择。
接下来是用户登录界面的代码部分。
def log_in(): # 用户登入
username = input('请输入用户名: ')
password = input('请输入密码: ')
# 首先获取用户输入的用户名以及密码,然后传递check_user_information(username,password)
check_user_information(username, password)
# 在这里修改了一下用户信息检查的代码,加入了2个需要传递的参数。随后是检查逻辑的代码实现。
def check_user_information(username_, password_): # 用户信息检查,username和password后面的_仅仅为了方便区分.
global user_id # 引用函数外的变量
for i in range(len(user_name)): # 遍历全部的用户信息
if user_name[i]['name'] == username_ and user_name[i]['password'] == password_: # 如果登入成功
print('登入成功')
user_id = i # 成功获取用户序列
break # 结束循环
if not user_id == -1: # 通过user_id来判断是否成功登入,如果不等于-1则登入成功 if not 如果不 也可以写 if user_id != -1
# 登入成功
modify_information(user_id) # 进入信息修改界面来改账号或者密码,传入user_id方便查找
else:
# 登入失败
print('账号密码错误或账号不存在。')
user_selection() # 返回用户选择
# user_name[i]['name'] 的意思是先获取 列表user_name[i] 所保存的字典user_name_,然后再查看字典里name的值接着完成用户注册的代码部分。
def sign_up(): # 用户注册
username = input('请输入用户名: ')
password = input('请输入密码: ')
# 首先让用户输入要注册的账号和密码
user_name_['name'] = username
user_name_['password'] = password
# 将账号密码先写入字典再写入列表
user_name.append(user_name_)
print('注册成功,即将返回选择界面')
user_selection() # 接着再返回用户选择最后是用户信息修改功能,实现起来非常简单。
def modify_information(user_id_): # 修改信息
global user_id
selection = input('1.修改账号 2.修改密码 3.退出登入 (输入数字即可,例如1):')
if selection == '1':
user_name[int(user_id_)]['name'] = input('输入新的账号') # user_id是字符串要int一下
user_id = -1
start() # 返回最开始
elif selection == '2':
user_name[int(user_id_)]['password'] = input('输入新的密码')
user_id = -1
start()
elif selection == '3':
user_id = -1
start()
else:
print('您输入的似乎并不是其中的选项请重新输入')
modify_information(user_id)总结
整个过程非常简单,接下来将展示全部完整代码。
user_name = [] # 声明一个列表来保存下面那个字典user_name_
user_name_ = {
'name': '',
'password': ''
} # 声明一个用来保存账号信息的字典
user_id = -1 # 用户序列号
def start(): # 程序开始界面
print('----------用户登入程序----------')
print('| 温馨提示:用户名不可以过长 |')
print('| 密码请记牢,暂时不支持找回 |')
print('------------------------------')
user_selection()
def user_selection(): # 用户选择需要进行的操作
selection = input('1.登入 2.注册 (输入数字即可,例如1): ')
if selection == '1': # 判断是否为1
log_in()
elif selection == '2': # 判断是否为2,或者不是其中的任何选择
sign_up()
else:
print('您输入的并不是1或者2,请重新输入!')
user_selection()
def log_in(): # 用户登入
username = input('请输入用户名: ')
password = input('请输入密码: ')
# 首先获取用户输入的用户名以及密码,然后传递check_user_information(username,password)
check_user_information(username, password)
# 在这里修改了一下用户信息检查的代码,加入了2个需要传递的参数。
def sign_up(): # 用户注册
username = input('请输入用户名: ')
password = input('请输入密码: ')
# 首先让用户输入要注册的账号和密码
user_name_['name'] = username
user_name_['password'] = password
# 将账号密码先写入字典再写入列表
user_name.append(user_name_)
print('注册成功,即将返回选择界面')
user_selection() # 接着再返回用户选择
def check_user_information(username_, password_): # 用户信息检查,username和password后面的_仅仅为了方便区分.
global user_id # 引用函数外的变量
for i in range(len(user_name)): # 遍历全部的用户信息
if user_name[i]['name'] == username_ and user_name[i]['password'] == password_: # 如果登入成功
print('登入成功')
user_id = i # 成功获取用户序列
break # 结束循环
if not user_id == -1: # 通过user_id来判断是否成功登入,如果不等于-1则登入成功 if not 如果不 也可以写 if user_id != -1
# 登入成功
modify_information(user_id) # 进入信息修改界面来改账号或者密码,传入user_id方便查找
else:
# 登入失败
print('账号密码错误或账号不存在。')
user_selection() # 返回用户选择
# user_name[i]['name'] 的意思是先获取 列表user_name[i] 所保存的字典user_name_,然后再查看字典里name的值
def modify_information(user_id_): # 修改信息
global user_id
selection = input('1.修改账号 2.修改密码 3.退出登入 (输入数字即可,例如1):')
if selection == '1':
user_name[int(user_id_)]['name'] = input('输入新的账号') # user_id是字符串要int一下
user_id = -1
start() # 返回最开始
elif selection == '2':
user_name[int(user_id_)]['password'] = input('输入新的密码')
user_id = -1
start()
elif selection == '3':
user_id = -1
start()
else:
print('您输入的似乎并不是其中的选项请重新输入')
modify_information(user_id)
start() # 调用程序开始界面来显示信息到此这篇关于用Python实现一个简单的用户系统的文章就介绍到这了,更多相关Python用户系统内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













