簡體   English   中英

如何替換按鈕上顯示的值單擊streamlit

[英]How to replace displayed value on a button click on streamlit

我正在顯示帶有流光的數字“1”。 如果單擊“執行計算 2”,我想用“2”替換這個“1”,如果單擊“執行計算 3”,我想用“3”替換。 它有點工作,但我不想同時顯示兩者,我想根據我單擊的按鈕將“1”替換為“2”或“3”。

import streamlit as st

st.write("1")

runButton = st.button("Perform calculation 2")
if runButton:
    st.write("2")

runButton2 = st.button("Perform calculation 3")
if runButton2:
    st.write("3")

在此處輸入圖像描述

您可以使用 session state 和對按鈕的回調。

代碼

import streamlit as st

if 'num' not in st.session_state:
    st.session_state.num = "1"

def update2():
    st.session_state.num = "2"

def update3():
    st.session_state.num = "3"

st.write(st.session_state.num)
st.button("Perform calculation 2", on_click=update2, key='key_2')
st.button("Perform calculation 3", on_click=update3, key='key_3')

Output

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM