下面是使用Python和SQLite实现用户名密码的注册和登录的示例代码:
首先,在Python中使用sqlite3库连接到SQLite数据库:
import sqlite3
conn = sqlite3.connect('users.db')
c = conn.cursor()
然后创建一个用户表格,其中包含用户名和密码两个字段:
c.execute('''CREATE TABLE users (username text, password text)''')
接下来,实现用户注册功能,从控制台获取用户输入的用户名和密码,然后将其插入到用户表格中:
def register():
username = input("请输入用户名:")
password = input("请输入密码:")
c.execute("INSERT INTO users (username, password) VALUES (?, ?)", (username, password))
conn.commit()
print("注册成功!")
接着,实现用户登录功能,同样从控制台获取用户输入的用户名和密码,并在用户表格中查找匹配的记录,如果找到了,就表示登录成功:
def login():
username = input("请输入用户名:")
password = input("请输入密码:")
c.execute("SELECT * FROM users WHERE username=? AND password=?", (username, password))
if c.fetchone():
print("登录成功!")
# 在这里执行登录成功后跳转到新页面的代码
else:
print("用户名或密码错误!")
完整的代码如下:
import sqlite3
conn = sqlite3.connect('users.db')
c = conn.cursor()
c.execute('''CREATE TABLE users (username text, password text)''')
def register():
username = input("请输入用户名:")
password = input("请输入密码:")
c.execute("INSERT INTO users (username, password) VALUES (?, ?)", (username, password))
conn.commit()
print("注册成功!")
def login():
username = input("请输入用户名:")
password = input("请输入密码:")
c.execute("SELECT * FROM users WHERE username=? AND password=?", (username, password))
if c.fetchone():
print("登录成功!")
# 在这里执行登录成功后跳转到新页面的代码
else:
print("用户名或密码错误!")
while True:
choice = input("请选择操作:1.注册 2.登录 3.退出\n")
if choice == '1':
register()
elif choice == '2':
login()
elif choice == '3':
break
else:
print("无效的选择!")
conn.close()