当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Streamlit st.write用法及代码示例


向应用程序写入参数。

这是 Streamlit 命令的瑞士军刀:它会根据你向它扔的东西做不同的事情。与其他 Streamlit 命令不同,write() 具有一些独特的属性:

  1. 您可以传入多个参数,所有参数都将被写入。
  2. 它的行为取决于输入类型,如下所示。
  3. 它返回None,所以它在App中的"slot"不能被重用。

函数签名

st.write(*args, **kwargs)
参数说明

*args (any)

要打印到应用程序的一个或多个对象。

参数处理如下:

  • write(string):打印格式化的 Markdown 字符串,支持 LaTeX 表达式和表情符号短代码。有关更多信息,请参阅st.markdown 的文档。
  • write(data_frame):将DataFrame 显示为表格。
  • write(error) :特别打印异常。
  • write(func) :显示有关函数的信息。
  • write(module) :显示有关模块的信息。
  • write(dict) :在交互式小部件中显示 dict。
  • write(mpl_fig) :显示一个 Matplotlib 图。
  • write(altair) :显示 Altair 图表。
  • write(keras) :显示 Keras 模型。
  • write(graphviz) :显示 Graphviz 图。
  • write(plotly_fig):显示一个绘图图。
  • write(bokeh_fig) :显示散景图。
  • write(sympy_expr):使用 LaTeX 打印 SymPy 表达式。
  • write(htmlable) :如果可用,则为对象打印_repr_html_()。
  • write(obj) :如果其他未知,则打印 str(obj)。

unsafe_allow_html (bool)

这是一个仅限关键字的参数,默认为 False。

默认情况下,字符串中的任何 HTML 标记都将被转义,因此被视为纯文本。通过将此参数设置为 True,可以关闭此行为。

也就是说,we strongly advise against it。编写安全的 HTML 很困难,因此使用此参数可能会损害用户的安全性。有关更多信息,请参阅:

https://github.com/streamlit/streamlit/issues/152

另请注意,`unsafe_allow_html` 是一项临时措施,可能随时从 Streamlit 中删除。

如果您还是决定启用 HTML,请在此处告诉我们您的确切用例:https://discuss.streamlit.io/t/96

这将帮助我们提供安全的 API,让您可以随心所欲。

示例

它的基本用例是绘制 Markdown 格式的文本,只要输入是字符串:

write('Hello, *World!* :sunglasses:')

如前所述,st.write() 还接受其他数据格式,例如数字、 DataFrame 、样式 DataFrame 和分类对象:

st.write(1234)
st.write(pd.DataFrame({
     'first column': [1, 2, 3, 4],
     'second column': [10, 20, 30, 40],
 }))

最后,您可以传入多个参数来执行以下操作:

st.write('1 + 1 = ', 2)
st.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')

哦,还有一件事:st.write 也接受图表对象!例如:

import pandas as pd
import numpy as np
import altair as alt

df = pd.DataFrame(
     np.random.randn(200, 3),
     columns=['a', 'b', 'c'])

c = alt.Chart(df).mark_circle().encode(
     x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])

st.write(c)

相关用法


注:本文由纯净天空筛选整理自streamlit.io大神的英文原创作品 st.write。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。