0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Streamlit] サイドメニューに複数ボタンを作成する方法

Last updated at Posted at 2024-01-29

環境

  • Python(v3.12)
  • Streamlit(v1.30.0)
  • venv

サイドメニュー作成

1つだけボタンを作成する場合

test.py
import streamlit as st

if st.sidebar.button("Don't PUSH"):
    st.title("緊急警報発令!")

スクリーンショット 2024-01-29 21.51.45.png

サイドメニューの作成が便利すぎる!
ただ、この中にボタンを複数作成しないといけない場合、if文を何個も続けて書くのは冗長ですね……。

複数のボタンを作成したい時はこう書く

test.py
BUTTON_WEEK_MAPPING = {
    '月曜日': 'monday',
    '火曜日': 'tuesday',
    '水曜日': 'wednesday',
    '木曜日': 'thursday',
    '金曜日': 'friday',
    '土曜日': 'saturday',
    '日曜日': 'sunday',
}

for label, day_of_week in BUTTON_WEEK_MAPPING.items():
    if st.sidebar.button(label):
        st.title(day_of_week)

スクリーンショット 2024-01-29 22.28.18.png

参考

おわりに

  • UIがデフォルトで良すぎる・・・

以上

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?