スポンサーリンク

【Streamlit】入力フォームの基本!主要inputの使い方

記事内に広告が含まれています。

Streamlitのinput系関数はアプリケーション内でユーザーからデータを入力してもらうための基本機能です。

以下、主要なinput関数とその使い方について詳しく解説します。


スポンサーリンク

text_input: テキスト入力

概要

単一行のテキスト入力フィールドを作成します。
名前やコメント、簡単なテキスト入力が求められる際に便利です。

基本コード

import streamlit as st

name = st.text_input("名前を入力してください")
st.write("こんにちは", name)

引数

  • label フィールドのラベル(必須)
  • value デフォルトで表示するテキスト
  • max_chars 入力可能な文字数の制限
  • placeholder テキストフィールド内に表示されるプレースホルダーテキスト

スポンサーリンク

number_input: 数値入力

概要

数値のみを受け付ける入力フィールド。
数値データが求められるフォームに便利です。

基本コード

age = st.number_input("年齢を入力してください", min_value=0, max_value=100, step=1)
st.write("あなたの年齢は", age, "歳です")

引数

  • label フィールドのラベル(必須)
  • min_value & max_value 入力可能な最小・最大値
  • step 値を増減させる単位
  • format 表示フォーマット 小数点以下の桁数を指定可能

text_area: 複数行のテキスト入力

概要

複数行のテキスト入力が可能です。
コメントやフィードバックの収集などに使えます。

基本コード

feedback = st.text_area("ご意見・ご感想を入力してください")
st.write("ご意見ありがとうございます:", feedback)

引数

  • label フィールドのラベル
  • value デフォルトのテキスト
  • height フィールドの高さを指定できます
  • max_chars 入力可能な最大文字数

date_input: 日付入力

概要

カレンダーを使って日付を選択する入力フィールドです。

基本コード

birthday = st.date_input("生年月日を選択してください")
st.write("あなたの誕生日は", birthday, "です")

引数

  • label ラベル
  • value デフォルトの日付(datetime.dateオブジェクト)
  • min_value & max_value 選択可能な最小・最大日付

time_input: 時刻入力

概要

時刻(時間と分)を入力するためのフィールドです。

基本コード

appointment_time = st.time_input("予約時間を選択してください")
st.write("予約時間:", appointment_time)

引数

  • label ラベル
  • value デフォルトの時刻(datetime.timeオブジェクト)

file_uploader: ファイルアップロード

概要

ユーザーからファイルを受け取るための入力フィールド。
画像やCSVファイルなどのアップロードに使用します。

基本コード

uploaded_file = st.file_uploader("ファイルをアップロードしてください", type=["csv", "txt"])
if uploaded_file is not None:
    st.write("アップロードされたファイル名:", uploaded_file.name)

引数

  • label フィールドのラベル
  • type 許可するファイル拡張子(リスト形式)

slider: スライダー入力

概要

連続的または離散的な値を選択するスライダー。
数値の選択や範囲指定に使えます。

基本コード

level = st.slider("レベルを選択してください", min_value=0, max_value=100)
st.write("選択されたレベル:", level)

引数

  • label ラベル
  • min_value & max_value スライダーの最小・最大値
  • step スライダーの刻み幅
  • format 値の表示形式

まとめ

これらのinput関数を駆使することでユーザーインタラクションを豊かにし、データ入力フォームを作成できます。

スポンサーリンク
Python
著者SNS
タイトルとURLをコピーしました