使用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
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。