用Python实现:输入用户名及密码,遇到用户名Q时结束输入,每次输入的用户名及密码写入到文件user.txt或user.csv中
时间: 2023-05-19 19:00:43 浏览: 109
可以使用以下代码实现:
```python
import csv
with open('user.csv', 'w', newline='') as csvfile:
fieldnames = ['username', 'password']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
while True:
username = input('请输入用户名:')
if username == 'Q':
break
password = input('请输入密码:')
writer.writerow({'username': username, 'password': password})
```
这段代码会不断循环,要求用户输入用户名和密码,直到输入的用户名为 Q 时结束循环。每次输入的用户名和密码会被写入到 user.csv 文件中。
相关问题
实现单用户注册功能,即:用户名和密码(格式:小白-123)写入文件中 步骤要求: 1.提示输入用户名 2.提示输入密码 3.将用户名和密码(格式:小白-123)写入文件中
要实现单用户注册功能并将用户名和密码写入文件,可以按照以下Python脚本进行:
```python
# 导入必要的模块
import getpass
# 定义一个函数用于写入用户信息到文件
def write_user_info(username, password):
# 创建一个文件名,假设保存在当前目录下,名为"users.txt"
filename = "users.txt"
# 使用 try-except 资料安全,防止文件错误
try:
with open(filename, 'a') as file:
# 将用户名和密码(格式化为“用户名-密码”)写入文件
file.write(f"{username}-{'*'*len(password)}\n") # 对密码部分做星号替换,保护隐私
except Exception as e:
print(f"发生错误:{str(e)}")
# 1. 提示用户输入用户名
username = input("请输入您的用户名:")
# 2. 隐藏式获取用户的密码,避免直接显示
password = getpass.getpass("请输入您的密码:")
# 3. 写入文件
write_user_info(username, password)
print("用户信息已成功写入文件.")
#
用python创建一个登录系统,要求实现登录、注册、退出三个功能。 登录要求:输入用户名和密码,如果输错三次,输出“登录失败,下次再来。并终止整个系统。 注册要求:输入注册用户名和密码。如果用户名已经存在,请重新输入;如果用户名不存在,注册成果。 退出要求:直接输出“欢迎下次再来” 程序要求: 1、登录和注册用函数完成 2、需要在当前文件夹下创建usertxt文件,用于保存已有的用户名和密 码。
好的,下面是代码实现,先创建一个`usertxt`文件用于保存已有的用户名和密码,然后定义三个函数分别实现登录、注册和退出功能:
``` python
import os
def login():
# 读取已有的用户名和密码
with open('usertxt', 'r') as f:
users = f.readlines()
# 输入用户名和密码
for i in range(3):
username = input('请输入用户名:')
password = input('请输入密码:')
# 验证用户名和密码是否正确
for user in users:
if username + ' ' + password + '\n' == user:
print('登录成功')
return
print('用户名或密码错误,请重新输入')
# 输错三次,退出系统
print('登录失败,下次再来')
exit()
def register():
# 读取已有的用户名和密码
with open('usertxt', 'r') as f:
users = f.readlines()
# 输入用户名和密码
while True:
username = input('请输入用户名:')
password = input('请输入密码:')
# 验证用户名是否已存在
for user in users:
if username + ' ' == user.split()[0]:
print('用户名已存在,请重新输入')
break
else:
# 用户名不存在,写入文件
with open('usertxt', 'a') as f:
f.write(username + ' ' + password + '\n')
print('注册成功')
break
def quit():
print('欢迎下次再来')
exit()
# 主函数
if __name__ == '__main__':
# 如果usertxt文件不存在,则创建一个空文件
if not os.path.exists('usertxt'):
open('usertxt', 'w').close()
while True:
choice = input('请选择功能:1.登录 2.注册 3.退出\n')
if choice == '1':
login()
elif choice == '2':
register()
elif choice == '3':
quit()
else:
print('输入无效,请重新输入')
```
这个程序通过读取`usertxt`文件中的用户名和密码来验证登录和注册,如果文件不存在则创建一个空文件。注意,用户名和密码之间用一个空格分隔,每个用户的信息占一行。在注册时,如果用户名已经存在,则需要重新输入;否则将新的用户名和密码写入文件。在登录时,如果输错三次,则直接退出程序。
阅读全文