对于上一个漂流瓶,要求包含登录,注册功能
时间: 2023-07-13 19:23:02 浏览: 45
好的,这里是一个包含登录和注册功能的漂流瓶程序示例:
```python
import random
# 模拟一个海洋,用列表存储漂流瓶信息
ocean = []
# 模拟用户数据,用字典存储用户名和密码
users = {}
# 定义函数,注册新用户
def register():
username = input("请输入用户名:")
password = input("请输入密码:")
if username in users:
print("用户名已经存在,请重新输入!")
else:
users[username] = password
print("注册成功!")
# 定义函数,登录用户
def login():
username = input("请输入用户名:")
password = input("请输入密码:")
if username not in users or users[username] != password:
print("用户名或密码错误,请重新输入!")
return None
else:
print("登录成功!")
return username
# 定义函数,将漂流瓶扔到海里
def throw_bottle(username):
message = input("请输入你想说的话:")
ocean.append((username, message))
print("你的漂流瓶已经扔到海里了!")
# 定义函数,从海里捞起一个漂流瓶
def pick_bottle():
if len(ocean) == 0:
print("海里没有漂流瓶!")
else:
username, message = random.choice(ocean)
ocean.remove((username, message))
print("你捞起了一个漂流瓶,里面的信息是:", message)
print("这个漂流瓶是", username, "扔的!")
# 主程序循环执行,等待用户输入命令
while True:
command = input("请输入命令:register(注册),login(登录),throw(扔漂流瓶),pick(捞漂流瓶),exit(退出程序)")
if command == "register":
register()
elif command == "login":
username = login()
elif command == "throw":
if username:
throw_bottle(username)
else:
print("请先登录!")
elif command == "pick":
pick_bottle()
elif command == "exit":
break
else:
print("无效的命令,请重新输入!")
```
在这个程序中,我们添加了一个模拟用户数据的字典,用于存储用户名和密码。当用户选择注册时,程序会要求输入用户名和密码,并将它们存储到字典中。当用户选择登录时,程序会要求输入用户名和密码,并检查它们是否匹配字典中的记录。如果登录成功,程序会将用户名保存在变量`username`中,以便在后续操作中使用。
当用户选择扔漂流瓶时,程序会检查用户是否已登录,如果已登录,则要求输入信息并将它们添加到漂流瓶列表中。当用户选择捞漂流瓶时,程序会随机选择一个漂流瓶,并从列表中删除它。程序还包括一个无限循环,等待用户输入命令来执行不同的操作,直到用户输入“exit”退出程序。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)