mei_13のPython講座 ロゴ

サンプルコード集 (Streamlit)





◯こちらのサンプルコードは指導等にご自由にお使いください。


【サンプルコードの使い方】
◯サンプルコードを写す時はコピペをしないようにしましょう。
◯▶を押すと出力が表示されます。
◯Geminiボタンを押すとGemini(AI)による解説が表示されます。間違っていることもあるので、疑問に思った場合はご質問ください。
◯本マークを押すとカテゴリーの解説が見られます。


【カテゴリーごとのページへ移動】

【Code List】
すべて見る


CODE: r-1 (Streamlit)

import streamlit as st def main(): st.set_page_config(page_title="はじめてのStreamlit") st.title("はじめてのStreamlit") name = st.text_input("あなたのお名前を教えてください") if ( st.button("実行する") ): st.write(f"こんにちは、{name}さん!") return(0) if __name__ == "__main__": main()



CODE: r-2 (Streamlit)

import streamlit as st def main(): title = "Streamlitでセレクトボックス!" st.set_page_config(page_title=title) st.title(title) fruits_list = ["りんご", "バナナ", "みかん", "いちご"] name = st.text_input("あなたのお名前を教えてください") selected_fruits = st.selectbox("好きな果物を教えて!", fruits_list) if ( st.button("実行する") ): st.write(f"こんにちは、{name}さん!") st.write(f"選択したフルーツ: {selected_fruits}") return(0) if __name__ == "__main__": main()



CODE: r-3 (Streamlit)

import streamlit as st def show_page1(): st.title("問い合わせフォーム") with st.form("contact_form"): name = st.text_input("お名前") message = st.text_input("内容") submitted = st.form_submit_button("送信") if ( submitted ): if ( name and message ): st.session_state.name = name st.session_state.message = message st.session_state.page = "page2" st.rerun() else: st.error("すべての項目に入力してください。") return def show_page2(): st.title("送信完了!") st.write("送信内容") name = st.session_state.get("name") message = st.session_state.get("message") st.write(f"名前: {name}") st.write(f"内容: {message}") if ( st.button("フォームに戻る") ): st.session_state.page = "page1" st.rerun() return def main(): st.set_page_config(page_title="問い合わせフォーム") if ( "page" not in st.session_state ): st.session_state.page = "page1" if ( st.session_state.page=="page1" ): show_page1() elif ( st.session_state.page=="page2" ): show_page2() return(0) if __name__ == "__main__": main()



CODE: r-4 (Streamlit)

import streamlit as st def show_tab1(): st.subheader("ユーザープロフィール") name = st.text_input("表示名", value="山田 太郎") bio = st.text_area("自己紹介", placeholder="ここに自己紹介を書いてください") st.info("これらは公開プロフィールに表示されます。") return(name, bio) def show_tab2(name, bio): st.subheader("現在の設定内容") st.write(f"**名前:** {name}") st.write(f"**紹介文:** {bio}") return def main(): st.title("マイページ設定") (tab1, tab2) = st.tabs(["基本情報", "プレビュー"]) with tab1: (name, bio) = show_tab1() with tab2: show_tab2(name, bio) return(0) if __name__ == "__main__": main()



CODE: r-5 (Streamlit)

import streamlit as st def main(): st.title("計算チャットボット") if ( "messages" not in st.session_state ): st.session_state.messages = [] for message in st.session_state.messages: with st.chat_message(message["role"]): st.write(message["content"]) prompt = st.chat_input("計算式を入力してください (例: 10 + 5)") if ( prompt ): st.session_state.messages.append({"role": "user", "content": prompt}) with st.chat_message("user"): st.write(prompt) try: result = eval(prompt) response = f"計算結果は {result} です。" except Exception: response = "計算できませんでした。正しい数式を入力してください。" with st.chat_message("assistant"): st.write(response) st.session_state.messages.append({"role": "assistant", "content": response}) return(0) if __name__ == "__main__": main()





初心者から始められるPythonレッスン

プログラミング未経験者・初心者歓迎!
月額4,000円で質問し放題!!
● 完全オンライン
● 翌日までには必ず返信
● 挫折しない独自の学習メソッド
● 圧倒的高評価!!
テキストベースで時間を選ばない
● 高品質なサンプルコード
詳細はこちら
興味がある方はまず質問だけでもどうぞ!



AIアシスタント Yuki