Python+SQLite,实现注册和登录

下面是使用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()