显示文件上传器小部件。
默认情况下,上传的文件限制为 200MB。您可以使用server.maxUploadSize
配置选项。有关如何设置配置选项的更多信息,请参阅https://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options
函数签名
st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False)
参数 | 说明 |
---|---|
label (str) | 一个简短的标签,向用户解释此文件上传器的用途。 |
type (str or list of str or None) | 允许的扩展名数组。 ['png', 'jpg'] 默认为无,表示允许所有扩展。 |
accept_multiple_files (bool) | 如果为 True,则允许用户同时上传多个文件,在这种情况下,返回值将是文件列表。默认值:假 |
key (str or int) | 一个可选的字符串或整数,用作小部件的唯一键。如果省略,将根据其内容为小部件生成一个 key 。相同类型的多个小部件可能不共享相同的键。 |
help (str) | 显示在文件上传器旁边的工具提示。 |
on_change (callable) | 当此 file_uploader 的值更改时调用的可选回调。 |
args (tuple) | 传递给回调的可选参数元组。 |
kwargs (dict) | 一个可选的 kwargs 字典传递给回调。 |
disabled (bool) | 一个可选的布尔值,如果设置为 True,则禁用文件上传器。默认值为假。此参数只能由关键字提供。 |
返回 | 说明 |
(None or UploadedFile or list of UploadedFile) |
UploadedFile 类是 BytesIO 的子类,因此它是"file-like"。这意味着您可以将它们传递到预期文件的任何位置。 |
例子
插入一次接受单个文件的文件上传器:
uploaded_file = st.file_uploader("Choose a file")
if uploaded_file is not None:
# To read file as bytes:
bytes_data = uploaded_file.getvalue()
st.write(bytes_data)
# To convert to a string based IO:
stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))
st.write(stringio)
# To read file as string:
string_data = stringio.read()
st.write(string_data)
# Can be used wherever a "file-like" object is accepted:
dataframe = pd.read_csv(uploaded_file)
st.write(dataframe)
插入一次接受多个文件的文件上传器:
uploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)
for uploaded_file in uploaded_files:
bytes_data = uploaded_file.read()
st.write("filename:", uploaded_file.name)
st.write(bytes_data)
相关用法
- Python Streamlit st.form_submit_button用法及代码示例
- Python Streamlit st.form用法及代码示例
- Python Streamlit st.experimental_singleton.clear用法及代码示例
- Python Streamlit st.bokeh_chart用法及代码示例
- Python Streamlit st.caption用法及代码示例
- Python Streamlit st.text_input用法及代码示例
- Python Streamlit st.area_chart用法及代码示例
- Python Streamlit st.title用法及代码示例
- Python Streamlit st.cache用法及代码示例
- Python Streamlit st.experimental_singleton用法及代码示例
- Python Streamlit st.empty用法及代码示例
- Python Streamlit st.error用法及代码示例
- Python Streamlit st.video用法及代码示例
- Python Streamlit st.vega_lite_chart用法及代码示例
- Python Streamlit st.slider用法及代码示例
- Python Streamlit st.header用法及代码示例
- Python Streamlit st.container用法及代码示例
- Python Streamlit st.plotly_chart用法及代码示例
- Python Streamlit st.bar_chart用法及代码示例
- Python Streamlit st.code用法及代码示例
- Python Streamlit st.experimental_memo.clear用法及代码示例
- Python Streamlit st.warning用法及代码示例
- Python Streamlit st.image用法及代码示例
- Python Streamlit st.markdown用法及代码示例
- Python Streamlit st.expander用法及代码示例
注:本文由纯净天空筛选整理自streamlit.io大神的英文原创作品 st.file_uploader。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。