• Streamlit学习笔记


    Streamlit学习笔记


    无意间看到低代码的Streamlit,感觉很好用还可以免费部署,这个结合AI和数据科学来演示,效果很好。最近比较有空就看看文档学习一下。文档里的内容很全面,我就只记一些自己觉得有用的,想学习的推荐去看 官方文档

    1.基础知识点

    1.运行需要在命令行里:streamlit run your_app.py
    2.常用组件:

    作用语句
    显示文本st.write(“普通文字”);st.write(“”“makerdown文本”“”);st.text(‘普通文本.’);st.title(‘title’);st.header(‘title’);st.subheader(‘subheader’)
    显示jsonst.json({ “code”: 0,“data”: { “sex”: “female”, “age”: 18,“score”: 100}})
    显示代码st.code(“”“print(‘Hello’)”“”, language=‘python’)
    显示DataFramest.dataframe(pd.DataFrame(np.random.randn(5, 2), columns=([‘col_1’,‘col_2’])))(表格有滚动条);st.table(df)(表格没有滚动条)
    输入文本st.text_input(‘请输入最喜欢的编程语言’, key=“name”)
    按钮st.button(“我是按钮,点击我”)
    滑动条st.slider(‘temperature’, 0, 100)
    勾选框st.checkbox(‘Yes’)
    单选框st.radio(‘Pick a language’, [‘python’, ‘c’, ‘rust’, ‘c++’])
    下拉单选st.selectbox(‘用过哪种编程语言?’, (‘python’, ‘c’, ‘java’, ‘rust’))
    日期选择器st.date_input(‘when’)
    颜色选择器st.color_picker(‘Pick a color’)
    文件上传选择器st.file_uploader(‘Pick a file’)

    3.session_state

    if 'counter' not in st.session_state:
        st.session_state.counter = 0
    if st.button('Increment'):
        st.session_state.counter += 1
    st.write('Count= ', st.session_state.counter)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4.回调(callbacks)是一个python函数,它在输入组件被更改时被调用,比如按钮被点击、滑动条被拉拽等。
    无参回调

    if 'counter' not in st.session_state:
        st.session_state.counter = 0
    def increment_counter():
        st.session_state.counter += 1
    st.button('Increment', on_click=increment_counter)
    st.write('Count= ', st.session_state.counter)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    args回调

    if 'counter' not in st.session_state:
        st.session_state.counter = 0
    increment_value = st.number_input('Enter a value', value=0, step=1)
    def increment_counter(increment_value):
        st.session_state.counter += increment_value
    increment = st.button('Increment', on_click=increment_counter,args=(increment_value))
    st.write('Count = ', st.session_state.counter)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    kwargs回调

    if 'counter' not in st.session_state:
        st.session_state.counter = 0
    def increment_counter(increment_value=0):
        st.session_state.counter += increment_value
    def decrement_counter(decrement_value=0):
        st.session_state.counter -= decrement_value
    st.button('Increment', on_click=increment_counter,kwargs=dict(increment_value=5))
    st.button('Decrement', on_click=decrement_counter,kwargs=dict(decrement_value=1))
    st.write('Count = ', st.session_state.counter)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
  • 相关阅读:
    Vue数据绑定
    软件设计模式系列之二十——备忘录模式
    二进制安装k8s高可用部署
    aspnet基于mvc松茸进出口特产销售网站
    音视频从入门到精通——FFmpeg数据结构分析
    【数论】莫比乌斯反演
    L40.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- useradd和usermod
    Linux 权限
    【c语言】详解文件操作(二)
    使用跳板机实现外网访问局域网内虚拟机的大数据及K8S集群【借助向日葵】
  • 原文地址:https://blog.csdn.net/weixin_38226321/article/details/132360816