Python+streamlit實現(xiàn)輕松創(chuàng)建人事系統(tǒng)
系統(tǒng)簡介
這個簡單的人事系統(tǒng)包含了添加員工和顯示員工列表兩個功能。在 Streamlit 庫中,可以使用 st.sidebar 創(chuàng)建側邊欄,其中可以包含各種菜單選項。在選擇菜單選項后,可以使用 st.write 和 st.dataframe 顯示文本和數(shù)據表格。此外,可以使用 st.text_input 和 st.number_input 創(chuàng)建輸入框,讓用戶輸入員工信息,并使用 st.button 創(chuàng)建按鈕來觸發(fā)添加員工操作。最后,在程序主函數(shù)中調用以上各個函數(shù)即可。
代碼詳情
我們先導入相關依賴,并創(chuàng)建員工類
import streamlit as st import pandas as pd # 創(chuàng)建員工類 class Employee: def __init__(self, name, age, position): self.name = name self.age = age self.position = position
接下來我們編寫員工函數(shù),導入員工數(shù)據
# 創(chuàng)建員工列表 employee_list = [] # 添加員工函數(shù) def add_employee(name, age, position): employee = Employee(name, age, position) employee_list.append(employee) # 顯示員工列表函數(shù) def show_employee_list(): if len(employee_list) == 0: st.write('員工列表為空!') else: df = pd.DataFrame([[e.name, e.age, e.position] for e in employee_list], columns=['姓名', '年齡', '職位']) st.dataframe(df)
最后就是添加頁面部分以及主程序
# 添加員工界面 def add_employee_page(): st.write('添加新員工') name = st.text_input('姓名') age = st.number_input('年齡', min_value=0, max_value=100) position = st.text_input('職位') if st.button('添加'): add_employee(name, age, position) st.success('添加成功!') # 顯示員工列表界面 def show_employee_list_page(): st.write('員工列表') show_employee_list() # 主程序 def main(): st.title('人事系統(tǒng)') menu = ['添加員工', '員工列表'] choice = st.sidebar.selectbox('選擇菜單', menu) if choice == '添加員工': add_employee_page() elif choice == '員工列表': show_employee_list_page()
完整代碼
import streamlit as st import pandas as pd # 創(chuàng)建員工類 class Employee: def __init__(self, name, age, position): self.name = name self.age = age self.position = position # 創(chuàng)建員工列表 employee_list = [] # 添加員工函數(shù) def add_employee(name, age, position): employee = Employee(name, age, position) employee_list.append(employee) # 顯示員工列表函數(shù) def show_employee_list(): if len(employee_list) == 0: st.write('員工列表為空!') else: df = pd.DataFrame([[e.name, e.age, e.position] for e in employee_list], columns=['姓名', '年齡', '職位']) st.dataframe(df) # 添加員工界面 def add_employee_page(): st.write('添加新員工') name = st.text_input('姓名') age = st.number_input('年齡', min_value=0, max_value=100) position = st.text_input('職位') if st.button('添加'): add_employee(name, age, position) st.success('添加成功!') # 顯示員工列表界面 def show_employee_list_page(): st.write('員工列表') show_employee_list() # 主程序 def main(): st.title('人事系統(tǒng)') menu = ['添加員工', '員工列表'] choice = st.sidebar.selectbox('選擇菜單', menu) if choice == '添加員工': add_employee_page() elif choice == '員工列表': show_employee_list_page() if __name__ == '__main__': main()
到此這篇關于Python+streamlit實現(xiàn)輕松創(chuàng)建人事系統(tǒng)的文章就介紹到這了,更多相關Python streamlit人事系統(tǒng)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
PyCharm 2020.2下配置Anaconda環(huán)境的方法步驟
這篇文章主要介紹了PyCharm 2020.2下配置Anaconda環(huán)境的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-09-09python Bamboolib庫加速Pandas數(shù)據分析過程詳解
這篇文章主要介紹了python Bamboolib庫加速Pandas數(shù)據分析過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2024-01-01python實現(xiàn)簡易的學生信息管理系統(tǒng)
這篇文章主要為大家詳細介紹了python實現(xiàn)簡易的學生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05python編寫學生成績管理系統(tǒng)的邏輯結構及功能實現(xiàn)
這篇文章主要為大家介紹了python編寫學生成績管理系統(tǒng)實現(xiàn)八個功能示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04