Configure a text column in st.dataframe or st.data_editor.
This is the default column type for string values. This command needs to be used in the column_config parameter of st.dataframe or st.data_editor. When used with st.data_editor, editing will be enabled with a text input widget.
Function signature[source] | |
---|---|
st.column_config.TextColumn(label=None, *, width=None, help=None, disabled=None, required=None, default=None, max_chars=None, validate=None) | |
Parameters | |
label (str or None) | The label shown at the top of the column. If None (default), the column name is used. |
width ("small", "medium", "large", or None) | The display width of the column. Can be one of "small", "medium", or "large". If None (default), the column will be sized to fit the cell contents. |
help (str or None) | An optional tooltip that gets displayed when hovering over the column label. |
disabled (bool or None) | Whether editing should be disabled for this column. Defaults to False. |
required (bool or None) | Whether edited cells in the column need to have a value. If True, an edited cell can only be submitted if it has a value other than None. Defaults to False. |
default (str or None) | Specifies the default value in this column when a new row is added by the user. |
max_chars (int or None) | The maximum number of characters that can be entered. If None (default), there will be no maximum. |
validate (str or None) | A regular expression (JS flavor, e.g. "^[a-z]+$") that edited values are validated against. If the input is invalid, it will not be submitted. |
Examples
import pandas as pd import streamlit as st data_df = pd.DataFrame( { "widgets": ["st.selectbox", "st.number_input", "st.text_area", "st.button"], } ) st.data_editor( data_df, column_config={ "widgets": st.column_config.TextColumn( "Widgets", help="Streamlit **widget** commands π", default="st.", max_chars=50, validate=r"^st\.[a-z_]+$", ) }, hide_index=True, )
Still have questions?
Our forums are full of helpful information and Streamlit experts.