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进行稳定可靠的文件操作详解
Dec 31 Python
python数据类型判断type与isinstance的区别实例解析
Oct 31 Python
python如何重载模块实例解析
Jan 25 Python
python协程之动态添加任务的方法
Feb 19 Python
Python flask框架post接口调用示例
Jul 03 Python
详解Python IO口多路复用
Jun 17 Python
浅谈tensorflow使用张量时的一些注意点tf.concat,tf.reshape,tf.stack
Jun 23 Python
Python监听键盘和鼠标事件的示例代码
Nov 18 Python
上手简单,功能强大的Python爬虫框架——feapder
Apr 27 Python
python-opencv 中值滤波{cv2.medianBlur(src, ksize)}的用法
Jun 05 Python
Python实现简单的猜单词
Jun 15 Python
python脚本框架webpy模板赋值实现
Nov 20 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使用curl模拟登录后采集页面的例子
2013/11/04 PHP
php写的AES加密解密类分享
2014/06/20 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
PHP图形计数器程序显示网站用户浏览量
2016/07/20 PHP
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
关于可运行代码无法正常执行的使用说明
2010/05/13 Javascript
基于jquery的表头固定的若干方法
2011/01/27 Javascript
8个超棒的学习 jQuery 的网站 推荐收藏
2011/04/02 Javascript
js Array对象的扩展函数代码
2013/04/24 Javascript
常规表格多表头查询示例
2014/02/21 Javascript
使用jQuery.wechat构建微信WEB应用
2014/10/09 Javascript
jQuery中remove()方法用法实例
2014/12/25 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
微信小程序 实战程序简易新闻的制作
2017/01/09 Javascript
JavaScript 总结几个提高性能知识点(推荐)
2017/02/20 Javascript
BootStrap 动态表单效果
2017/06/02 Javascript
vue-cli脚手架-bulid下的配置文件
2018/03/27 Javascript
Vue2实时监听表单变化的示例讲解
2018/08/30 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
不刷新网页就能链接新的js文件方法总结
2020/03/01 Javascript
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
Python实现随机生成手机号及正则验证手机号的方法
2018/04/25 Python
在Python中os.fork()产生子进程的例子
2019/08/08 Python
PyCharm Anaconda配置PyQt5开发环境及创建项目的教程详解
2020/03/24 Python
如何用Python编写一个电子考勤系统
2021/02/08 Python
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
英国网上自行车商店:Tredz Bikes
2019/10/29 全球购物
英国最受信任的在线眼镜商之一:Fashion Eyewear
2019/10/31 全球购物
C语言中break与continue的区别
2012/07/12 面试题
大专毕业生自我鉴定
2013/11/21 职场文书
医院护士专业个人的求职信
2013/12/09 职场文书
新学期开学演讲稿
2014/05/24 职场文书
助人为乐模范事迹材料
2014/06/02 职场文书
党支部季度考核意见
2015/06/02 职场文书
SpringCloud超详细讲解Feign声明式服务调用
2022/06/21 Java/Android