这是我的代码,虽然我初始化了会话状态,但我与它有冲突。
import streamlit as st
if "user_inputs" not in st.session_state:
st.session_state["user_inputs"] = True
# Loop over the 8 questions
for i in range(8):
# Get the question
question = f'Question {i+1}'
# Add it to the page
st.subheader(question)
# Create 3 checkbox options
checkbox1 = st.checkbox('Option 1')
checkbox2 = st.checkbox('Option 2')
checkbox3 = st.checkbox('Option 3')
# Save the checkbox inputs in the session state object
st.session_state.user_inputs[f'{question}_checkbox_1'] = checkbox1
st.session_state.user_inputs[f'{question}_checkbox_2'] = checkbox2
st.session_state.user_inputs[f'{question}_checkbox_3'] = checkbox3
# Create an integer input
integer_input = st.number_input('Integer Input')
# Save the integer input in the session state object
st.session_state.user_inputs[f'{question}_integer_input'] = integer_input
# Create a slider
slider = st.slider('Slider', 0, 100)
# Save the slider value in the session state object
st.session_state.user_inputs['slider'] = slider
# Add a submit button
if st.button('Submit'):
st.success('Form submitted!')
我尝试了不同的初始化方法,但它们没有用。我的意思是当我尝试 st.session_state.user_inputs = "test"
或 st.session_state["user_inputs"] = "test"
之类的东西时,我又遇到了同样的错误:
错误是:
st.session_state 没有属性“user_inputs”。你忘了吗 初始化了吗?更多信息: https://docs.streamlit.io/library/advanced-features/session-state#initialization
我尝试创建一种形式,但收到重复错误。