【19】Python工资管理系统

简介:

实验名称:工资管理系统
实验要求:
Alex 100000
Rain 80000
Egon 50000
Yuan 30000
-----以上是info.txt文件-----
实现效果:
从info.txt文件中读取员工及其工资信息,最后将修改或增加的员工工资信息也写入原info.txt文件。
效果演示:

  1. 查询员工工资
  2. 修改员工工资
  3. 增加新员工记录
  4. 删除员工信息
  5. 退出

    >:1
    请输入要查询的员工姓名(例如:Alex):Alex
    Alex的工资是:100000。

  6. 查询员工工资
  7. 修改员工工资
  8. 增加新员工记录
  9. 删除员工信息
  10. 退出

    >:2
    请输入要修改的员工姓名和工资,用空格分隔(例如:Alex 10):Alex 10
    修改成功!

  11. 查询员工工资
  12. 修改员工工资
  13. 增加新员工记录
  14. 删除员工信息
  15. 退出

    >:3
    请输入要增加的员工姓名和工资,共空格分割(例如:Eric 100000):Eric 100000
    增加成功!

  16. 查询员工工资
  17. 修改员工工资
  18. 增加新员工记录
  19. 删除员工信息
  20. 退出

    >:4
    请输入要增加的员工姓名和工资,共空格分割(例如:Eric 100000):Eric 100000
    增加成功!

  21. 查询员工工资
  22. 修改员工工资
  23. 增加新员工记录
  24. 删除员工信息
  25. 退出

    >:5
    再见!

代码实现:

#!/usr/bin/env python
#-*- coding:utf-8 -*-

import os

######查询操作######
def select():
    name=input("请输入要查询的员工姓名(例如:Alex):").strip() #空格分段
    flag=False #判断条件
    with open("info.txt","r")as reads:
        for line in reads: #遍历
            if line.split()[0]==name:  ###[alex 1000],[Yuan 9999][0]==name
                flag=True
                print("员工信息",name,line.split()[1])  #[alex 1000][1]==1000
            else:  ###跳过,知道遍历结束为查询到,执行if not flag的判断
                continue
    if not flag:
        print("\033[31;1m未找到%s员工信息\033[0m"%name)

#####修改操作######
def revise():
    reff=input("请输入要修改的员工姓名和工资,用空格分隔(例如:Alex 10):").strip()  ##reff: "Alex 10000"
    reff_list=reff.split() #reff_list : ['Alex','1000']  class list
    flag=False
    with open("info.txt","r")as reads,open("info",'w')as writes:
        for line in reads: #遍历  line "alex 10000'
            if line.split()[0] == reff_list[0]:   ##line "alex" == reff_list ["alex",""]
                writes.write(reff+"\n")   #修改成功,True
                flag=True
            else:###
                writes.write(line)

    os.remove("info_bak.txt")
    os.rename("info.txt","info_bak.txt")
    os.rename("info","info.txt")
    if flag:
        print("修改成功")
    else:
        print("未找到需要修改的\033[31;1m%s\033[0m员工信息" % reff)

def app():
    rtff=input("请输入要增加的员工姓名和工资,共空格分割(例如:Eric 100000):").strip() ##以空格作为分隔符
    rtff_list=rtff.split()
    flag=False
    with open("info.txt","r")as reads:
        for line in reads:
            if line.split()[0] == rtff_list[0]: ##当相同时,print 以重复。
                flag = True
            else:
                continue
    if flag:
        print("\033[31;1m该%s用户已存在\033[0m"%rtff)
    else:
        with open("info.txt", "a") as writes:
            writes.write("\n"+rtff)
        print("增加成功")

######删除操作#######
def delete():
    name=input("请输入要删除的员工姓名(例如:Alex):").strip()
    flag=False
    with open("info.txt","r") as reads,open("info","w")as writes:
        for line in reads:
            if line.split()[0]==name:
                flag=True
                continue
            else:
                writes.write(line)
    os.remove("info_bak.txt")
    os.rename("info.txt", "info_bak.txt")
    os.rename("info", "info.txt")
    if flag:
        print("删除成功")
    else:
        print("未找到需要修改的\033[31;1m%s\033[0m员工信息" % name)

#####菜单#####
def main():
    menu={
        "1":select,
        "2":revise,
        "3":app,
        "4":delete,
        "5":exit,
    }
    while True:
        print("""
        请选择:
            1,查询员工信息
            2,修改员工工资
            3,增加员工信息
            4,删除员工信息
            5,退出工资系统
        """)
        choice=input(">>>").strip()  ##choice :"1,2,3,4"
        if choice in menu:  ###这里是menu字典的key值等于choice
            menu[choice]() ###进入对应的value

if __name__ == "__main__":
    main()














本文转自白羊IT51CTO博客,原文链接:http://blog.51cto.com/000011211684/2052701,如需转载请自行联系原作者
相关文章
|
3月前
|
算法 搜索推荐 JavaScript
基于python智能推荐算法的全屋定制系统
本研究聚焦基于智能推荐算法的全屋定制平台网站设计,旨在解决消费者在个性化定制中面临的选择难题。通过整合Django、Vue、Python与MySQL等技术,构建集家装设计、材料推荐、家具搭配于一体的一站式智能服务平台,提升用户体验与行业数字化水平。
|
3月前
|
存储 分布式计算 大数据
基于Python大数据的的电商用户行为分析系统
本系统基于Django、Scrapy与Hadoop技术,构建电商用户行为分析平台。通过爬取与处理海量用户数据,实现行为追踪、偏好分析与个性化推荐,助力企业提升营销精准度与用户体验,推动电商智能化发展。
|
4月前
|
机器学习/深度学习 数据可视化 搜索推荐
基于python的汽车数据可视化、推荐及预测系统
本研究围绕汽车数据可视化、推荐及预测系统展开,结合大数据与人工智能技术,旨在提升用户体验与市场竞争力。内容涵盖研究背景、意义、相关技术如 Python、ECharts、协同过滤及随机森林回归等,探讨如何挖掘汽车数据价值,实现个性化推荐与智能预测,为汽车行业智能化发展提供支持。
|
4月前
|
存储 安全 数据管理
基于python的在线考试系统
本系统基于Python开发,旨在通过信息化手段提升各行业数据管理效率。系统具备良好的安全性、稳定性及可扩展性,支持数据高效处理与决策支持,适用于教育、医疗、旅游等多个领域,助力办公自动化与科学化管理,显著提升工作效率并降低错误率。
|
4月前
|
存储 监控 API
Python实战:跨平台电商数据聚合系统的技术实现
本文介绍如何通过标准化API调用协议,实现淘宝、京东、拼多多等电商平台的商品数据自动化采集、清洗与存储。内容涵盖技术架构设计、Python代码示例及高阶应用(如价格监控系统),提供可直接落地的技术方案,帮助开发者解决多平台数据同步难题。
|
3月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的台风灾害分析及预测系统
针对台风灾害预警滞后、精度不足等问题,本研究基于Python与大数据技术,构建多源数据融合的台风预测系统。利用机器学习提升路径与强度预测准确率,结合Django框架实现动态可视化与实时预警,为防灾决策提供科学支持,显著提高应急响应效率,具有重要社会经济价值。

推荐镜像

更多