Python3实现的简单工资管理系统示例


Posted in Python onMarch 12, 2019

本文实例讲述了Python3实现的简单工资管理系统。分享给大家供大家参考,具体如下:

工资管理系统要求:

1. 查询员工工资
2. 修改员工工资
3. 增加新员工记录
4. 退出

执行代码:

#!/usr/bin/env python3
# Author:Robert
# --*-- coding: utf-8 --*--
def file_test():
  with open("info.txt",'r',encoding="utf-8") as f:
    file = list(f)
    return file
def server():
  for i in range(1):
    print("1.查询员工工资\n2.修改员工工资\n3.增加新员工记录\n4.退出")
    return i
loginSucces = False
while True:
    i = server()
    serial_number = input("请选择你的服务>>:")
    if serial_number.isdigit():
      serial_number = int(serial_number)
      file = file_test()
      if serial_number < 5 and serial_number >= 0:
        if serial_number == 1:
          name = input("请输入要查询的员工姓名:").strip()
          for i in file:
            file = i.strip().split()
            if name in file:
              break
          for i in file:
            if name in file:
              name_sum = file[1]
              print("\033[32;1m%s的工资是:%s\033[0m\n"%(name,name_sum))
              break
          else:
            print("\033[31;1m没有此用户!\033[0m\n")
        elif serial_number == 2:
          name_old = input("请输入要修改的员工姓:").strip()
          for ii in file:
            file = ii.strip().split()
            if name_old in file:
              print(file)
              sum_old = file[1]
              name_alter,sum_alter = input("请输入修改的新员工姓名和工资,用空格分割:").strip().split()
              with open("info.txt","r",encoding="utf-8") as f:
                lines = f.readlines()
              with open("info.txt","w",encoding="utf-8") as f_a:
                for line in lines:
                  if name_old in line:
                    line = line.replace(name_old,name_alter)
                  f_a.write(line)
                f_a.close()
                with open("info.txt", "r", encoding="utf-8") as f:
                  lines = f.readlines()
                with open("info.txt", "w", encoding="utf-8") as f_b:
                  for line in lines:
                    if name_alter in line:
                      line = line.replace(sum_old,sum_alter)
                    f_b.write(line)
                  f_b.close()
                  print("修改成功")
                  break
                  if loginSucces == True: break
          else:
            print("\033[31;1m没有此用户!\033[0m\n")
        elif serial_number == 3:
          try:
            name_new, sum_new = input("请输入要增加的员工姓名和工资,用空格分割:").strip().split()
          except ValueError:
            print("\033[31;1m输入的参数不够!\033[0m\n")
          else:
            if name_new.isalpha() and sum_new.isdigit():
              for ii in file:
                file = ii.strip().split()
                if name_new not in file:
                  with open("info.txt", "a+", encoding="utf-8") as f_c:
                    f_c.write("\n%s %s"%(name_new,sum_new))
                  print("增加成功")
                  break
                  if loginSucces == True: break
            else:
              print("\033[31;1m参数类型不对!\033[0m\n")
        elif serial_number == 4:
          print("\033[31;1m谢谢使用,下次再见!\033[0m\n")
          exit()
      else:
        print("\033[31;1m请输入正确的序号!\033[0m\n")
    else:
      print("\033[31;1m输入的不是整数!\033[0m\n")

info.txt

name salary
Alex 100000
Rain 80000
Egon 50000
Yuan 30000

更多关于Python相关内容可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
利用Python的Django框架中的ORM建立查询API
Apr 20 Python
python下os模块强大的重命名方法renames详解
Mar 07 Python
详解Python开发中如何使用Hook技巧
Nov 01 Python
python 列表中[ ]中冒号‘:’的作用
Apr 30 Python
Django中使用极验Geetest滑动验证码过程解析
Jul 31 Python
pytorch使用tensorboardX进行loss可视化实例
Feb 24 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
在TensorFlow中实现矩阵维度扩展
May 22 Python
Python虚拟环境库virtualenvwrapper安装及使用
Jun 17 Python
python 删除系统中的文件(按时间,大小,扩展名)
Nov 19 Python
在Django中使用MQTT的方法
May 10 Python
Python Pandas数据分析之iloc和loc的用法详解
Nov 11 Python
Python3模拟登录操作实例分析
Mar 12 #Python
深入解析python中的实例方法、类方法和静态方法
Mar 11 #Python
Python 函数返回值的示例代码
Mar 11 #Python
浅谈Python批处理文件夹中的txt文件
Mar 11 #Python
Python数据报表之Excel操作模块用法分析
Mar 11 #Python
Python合并同一个文件夹下所有PDF文件的方法
Mar 11 #Python
Python实现截取PDF文件中的几页代码实例
Mar 11 #Python
You might like
php ImageMagick windows下安装教程
2015/01/26 PHP
PHP5.3新特性小结
2016/02/14 PHP
laravel中的错误与日志用法详解
2016/07/26 PHP
如何判断php mysqli扩展类是否开启
2016/12/24 PHP
laravel实现上传图片的两种方式小结
2019/10/12 PHP
php实现微信小程序授权登录功能(实现流程)
2019/11/13 PHP
jQuery ajax BUG:object doesn't support this property or method
2010/07/06 Javascript
jquery和javascript的区别(常用方法比较)
2013/07/04 Javascript
AngularJS模块管理问题的非常规处理方法
2015/04/29 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
Augularjs-起步详解
2016/07/08 Javascript
AngularJS实现树形结构(ztree)菜单示例代码
2016/09/18 Javascript
详解vuex结合localstorage动态监听storage的变化
2018/05/03 Javascript
vue中动态select的使用方法示例
2019/10/28 Javascript
[02:45]DOTA2英雄敌法师基础教程
2013/11/25 DOTA
在Python的while循环中使用else以及循环嵌套的用法
2015/10/14 Python
Python实现读取并保存文件的类
2017/05/11 Python
Python实现计算对象的内存大小示例
2019/07/10 Python
python进程的状态、创建及使用方法详解
2019/12/06 Python
Python实现鼠标自动在屏幕上随机移动功能
2020/03/14 Python
python实现拼接图片
2020/03/23 Python
python 对象真假值的实例(哪些视为False)
2020/12/11 Python
HTML5拖放API实现自动生成相框功能
2020/04/07 HTML / CSS
HTML5 body设置自适应全屏
2020/05/07 HTML / CSS
英国床垫和床架购物网站:Bedman
2019/11/04 全球购物
酒店人事专员岗位职责
2013/12/19 职场文书
质检部职责
2013/12/28 职场文书
车间统计员岗位职责
2014/01/05 职场文书
党的群众路线教育实践活动公开承诺书
2014/03/28 职场文书
活动总结范文
2014/08/30 职场文书
大学生档案自我鉴定(2篇)
2014/10/14 职场文书
2015年员工工作表现评语
2015/03/25 职场文书
2015年环保局工作总结
2015/05/22 职场文书
单位考核鉴定意见
2015/06/05 职场文书
Matplotlib绘制混淆矩阵的实现
2021/05/27 Python
分析JVM源码之Thread.interrupt系统级别线程打断
2021/06/29 Java/Android