怎么通过Python中的Streamlit 和SQLite3,写入一个下拉选择框加载数据库,这样的代码怎么写?
时间: 2024-05-05 08:18:21 浏览: 198
可以使用以下代码实现:
```python
import streamlit as st
import sqlite3
# 连接数据库
conn = sqlite3.connect("mydatabase.db")
cursor = conn.cursor()
# 创建表格
cursor.execute("""
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER,
gender TEXT
)
""")
# 插入数据
cursor.execute("""
INSERT INTO users (name, age, gender) VALUES
("Alice", 25, "Female"),
("Bob", 30, "Male"),
("Charlie", 40, "Male")
""")
conn.commit()
# 创建下拉选择框
st.write("选择一个用户:")
selected_name = st.selectbox("姓名", options=[row[0] for row in cursor.execute("SELECT name FROM users")])
# 查询并显示选中用户的信息
st.write("用户信息:")
for row in cursor.execute(f"SELECT name, age, gender FROM users WHERE name='{selected_name}'"):
st.write(f"姓名:{row[0]}")
st.write(f"年龄:{row[1]}")
st.write(f"性别:{row[2]}")
# 关闭数据库连接
cursor.close()
conn.close()
```
这段代码连接了名为“mydatabase.db”的SQLite3数据库,创建了一个名为“users”的表格并插入了数据。然后创建了一个下拉选择框,用于选择查询的用户姓名。最后查询选择的用户的信息并在页面上显示。注意,在实际使用时,应该根据实际需要修改数据库路径和表格结构。
阅读全文