PythonだけでWebデザイン!Streamlitを使ってみた

PythonStreamlitWebアプリケーションプログラミング

12/24/2025


はじめに

僕は最近PythonでWebアプリ的な物をいつも作っています。
しかし、そういう時は大体Flaskでサーバーを立て、
HTMLを返すような構造にしています。HTMLを間に挟まないとアプリが作れないのです!

Streamlitとは?

Streamlitとは、フロントエンドを別で書かなくても
PythonでコーディングするだけでWebアプリが作れるというものです!

特徴

  • PythonだけでWebアプリが作れる
  • 簡単なコードでボタン、テキストボックスなどが配置できる
  • MarkdownやHTMLにも対応している
  • 最初から見た目が調整されている

使ってみよう

さっそく使ってみましょう。
インストールからサンプルコードまで解説します!

インストール

Streamlitは標準ライブラリではないので、
pipでインストールする必要があります。

pip install streamlit
important


Python3.14を使ったら、インストールできませんでした。
ベータ版なので、使っている人いないと思いますが

サンプルを動かそう

import streamlit as st st.title("Hello, world!") st.write("This is a sample streamlit application!") button = st.button("Say hello") if button: st.info("Hello world!")

このファイルを任意の名前で保存し、以下のコマンドを実行してください。

streamlit run <ファイル名>

すると...
streamlit-sample
ブラウザが開き、サンプルページが表示されました!

解説

st.title

タイトルを配置します。

important


ページのタイトルとは違うので注意です。

st.write

ページに文字列を書き込みます。
Markdown,HTMLにも対応しています。

important


HTMLを使うときは、unsafe_allow_html=Trueを指定すること。

st.button

ページにボタンを配置します。
ボタン押下時の動作は、

if button: # 動作

と書くことで可能です。

ほかの機能

Streamlitには他にも機能があります!

ほかの要素

st.radio

第一引数にラベル、第二引数に選択項目を指定すると、
radio
ラジオボタンが配置できます。

st.text_input

textinput
文字入力欄が作れます。placeholderも指定できます。

その他

  • ファイルを変更したら自動でリロードされる
  • config.tomlでテーマが指定できる

感じたこと

  • HTMLやCSSを習得しなくてもWebアプリが作れるのはうれしいと思った
  • ルーティングができないのは不便
  • 最初からレイアウトが整っているのがいい

終わりに

皆さんもStreamlitでWebアプリを作ってみてはいかがでしょうか?
最後まで読んでいただきありがとうございます。