0
点赞
收藏
分享

微信扫一扫

Python+Streamlit实现登录页

Python+Streamlit实现登录页 Streamlit 是一个开源的 Python 库,专为数据科学家和机器学习工程师设计,用于快速构建交互式 Web 应用。

其核心功能与特点包括: 1.快速原型开发 2.交互式数据展示 3.极简开发 4.实时更新 5.内置组件 6.无前端依赖 7.轻量部署

登录页 step1:C:\Users\wangrusheng\PycharmProjects\FastAPIProject1\hello.py

import streamlit as st

def main():
    """
    Creates a login page using Streamlit.
    """
    st.title("Logins")

    # Initialize session state for username and login status if they don't exist
    if 'username' not in st.session_state:
        st.session_state['username'] = ''
    if 'logged_in' not in st.session_state:
        st.session_state['logged_in'] = False

    # Function to handle login logic
    def login():
        """
        Handles user login.  For this example, authentication is simulated.
        """
        if st.session_state.username == "user" and st.session_state.password == "password":
            st.session_state.logged_in = True
            print(st.session_state.username)
            print(st.session_state.password)

            st.session_state['username'] = st.session_state.username #store username
        else:
            st.error("Invalid username or password")

    # Function to handle logout logic
    def logout():
        """Handles user logout"""
        st.session_state.logged_in = False
        st.session_state['username'] = ''

    # Show login form if not logged in
    if not st.session_state.logged_in:
        st.text_input("Username", key="username")
        st.text_input("Password", type="password", key="password")
        st.button("Login", on_click=login)
    # Show logout button if logged in
    else:
        st.write(f"Welcome, {st.session_state['username']}!")  # show user name
        st.button("Logout", on_click=logout)

if __name__ == "__main__":
    main()

step2:运行终端

 streamlit run hello.py

step3:打开浏览器

end

举报

相关推荐

0 条评论