python普遍工资-python实现 --工资管理系统
#-*- coding: utf-8 -*-
__author__ = 'hjianli'
#import re
importos
info_message= """Alex 100000
Rain 80000
Egon 50000
Yuan 30000"""
#序列字典
xulie_dict ={}#工资字典
gongzi_dict ={}#本地创建的文件名
file_name = "info.txt"
#创建文件的路径
Path =os.getcwd()
os.chdir(Path)#创建文件函数
def flush_info_txt(file_name, info=info_message):
with open(file_name,"wt", encoding="utf8") as f:
f.write(info+ " ")#追加新用户信息使用函数
def add_info_txt(file_name, info=None):
with open(file_name,"a+", encoding="utf8") as f:
f.writelines(info)#读取用户和工资信息函数
defread_file_txt(file_name):
with open(file_name) as f:
f=f.read()returnf#将读取出来的姓名和工资形成字典对应
definfo_user():
with open(file_name) as f:
file=f.read().strip().split()
keys= [x for x in range(len(file)) if x % 2 ==0]
value= [x for x in range(len(file)) if x % 2 == 1]for x, y inzip(keys,value):
gongzi_dict[file[x]]=file[y]returngongzi_dict#检测初始文件是否存在。不存在就创建,存在就忽略
defcheck_file():if notos.path.exists(file_name):
flush_info_txt(file_name)else:passcheck_file()#检测输入是否合理
defcheck_error(shuru):if len(shuru) ==0:print("您输入的为空,请检查输入!")elif str(shuru).isdigit() ==False :print("输入了错误的字符,请输入数字")else:returnTrue#检测输入的用户名是否在字典的keys中
defcheck_user(shuru):if shuru not ingongzi_dict.keys():pass
elif len(shuru) == 0 or int(len(shuru)) > 6:print("用户姓名输入错误!不符合姓名的格式.超过6个字段.")else:print("您输入的用户出现冲突,用户姓名必须唯一,请核对该用户的信息")
choice_exit=Truedefcheck_choice(choice):if (len(choice) != 0) and (int(choice) inlist_num):for i, q inenumerate(list_choice):
xulie_dict[i+1] =qfor key, value inxulie_dict.items():if int(choice) == 4:print("......程序正在退出..........")
exit(2)elif int(choice) ==key:
input_user_name= input("您选择的是:({}),请输入想要{}的员工姓名:".format(key, value[0:2]))
dict_name=info_user()if input_user_name indict_name.keys():if key == 1:print("{}的工资是:{} ******************************".format(input_user_name,dict_name[input_user_name]))break
elif key == 2:
dict_name=info_user()
old_gongzi=dict_name[input_user_name]#print(old_gongzi)
update_gongzi = input("请输入修改后的工资金额:")
check_error(update_gongzi)
dict_name[input_user_name]=update_gongzi
update_gongzi=dict_name[input_user_name]
str_info=read_file_txt(file_name)
str_info=str_info.replace(old_gongzi, update_gongzi)#print(str_info)
flush_info_txt(file_name, info=str_info)print("修改成功!")else:pass
elif key ==3:
new_gongzi= input("请输入他的工资:")
check_user(input_user_name)
new_user_info= str(input_user_name) + " " +new_gongzi
add_info_txt(file_name, new_user_info)print("新用户增加成功")else:print("您输入的用户名不存在,请检查后重新输入!")break
else:print("您输入了错误的数字,请检查重新输入是否在{}范围内".format(list_num))whilechoice_exit:
list_choice= ["查询员工工资", "修改员工工资", "增加新员工记录", "退出"]for i, q inenumerate(list_choice):print(str(i+1) + "." +str(q))
list_num= [x+1 for x inrange(len(list_choice))]
input_number= input(">>>>请输入您要进行的操作:")ifstr(input_number).isdigit():
check_choice(input_number)else:
check_error(input_number)continue
python普遍工资-python实现 --工资管理系统相关推荐
- 基于Python分析深圳程序员工资有多高?
基于Python分析深圳程序员工资有多高? 概述 前言 统计结果 爬虫技术分析 爬虫代码实现 爬虫分析实现 后记 前言 多图预警.多图预警.多图预警.校招季,毕业也多,跳槽也多.我们的职业发展还是要顺 ...
- python计算每月工资-python税后工资计算器
介绍 重新实现上一个挑战中的个税计算器,可以计算并处理多人的工资并打印税后工资. 项目需求改变: 输出税后工资 计算过程需要扣除社会保险费用 支持多人同时计算工资 打印税后工资列表 个税计算公式: 应 ...
- java和python工资-python为什么叫爬虫 python工资高还是java的高
人工智能的现世,让python学习成风,由于其发展前景好,薪资高,一时成为众多语言的首选.Python是一门非常适合开发网络爬虫的编程语言,十分的简洁方便所以是网络爬虫首选编程语言!不少新手常问pyt ...
- 用python计算工资工资_python税后工资计算器
介绍 重新实现上一个挑战中的个税计算器,可以计算并处理多人的工资并打印税后工资. 项目需求改变: 输出税后工资 计算过程需要扣除社会保险费用 支持多人同时计算工资 打印税后工资列表 个税计算公式: 应 ...
- python普遍工资-python平均工资
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 运行平台: windows python版本: python3.6 id ...
- python编程员工资-Python 程序员的工资能有多高?
最近有朋友向我问起了Python,说Python特别火,抖音.朋友圈到处都在宣传,能大幅度提高办公效率,学得好的甚至能实现办公自动化!Python真的有这么神奇吗? 作为公司的运营,在没有接触过这门神 ...
- python初学工资-Python怎么学,才能薪资翻一翻?
如果你对数据分析有所了解,一定听说过一些亲民的工具如Excel.Tableau.PowerBI等,都能成为数据分析的得力助手.但它们的不足也是显而易见的:操作繁琐,复用性差,功能相对局限单一. 怎么解 ...
- python就业方向及工资-Python的5大就业方向,薪资诱人前景好!
相信不少Python的初学者,都会遇到一些问题问题. " 我想学Python,但是学完Python后能干啥 ?" " 现在学Python,哪个方向最简单?哪个方向最吃香 ...
- python运维工程师招聘_【python自动化运维工程师工资】图灵学院2020年python自动化运维工程师工资待遇-看准网...
职位描述 招聘要求: 至少满足下面三个招聘方向中的一条. 招聘主要方向: 一.python web高级讲师 职位要求: 1.精通Python,具有python web开发经验,有参与多个完整的项目生命 ...
最新文章
- python 判断字典是否包含某个key,以及对应的value 值
- Java-Web监听器
- hdu4415 不错的想法题
- 360企业版终端安装说明
- 计算机英语翻译的典故,中国成语典故英语翻译大全
- C#构造函数、私有构造函数、静态构造函数与构造函数执行顺序
- linux 安装库 编译提示-lcrypto 无法链接,缺少 crypto 库
- 关于MongDB数据迁移方案的研究
- PAT (Basic Level) 1058 选择题(模拟)
- 逃离迷茫和枯燥,让自己快乐起来
- 上午写了一段代码,下午就被开除了,奇怪的知识又增加了
- qtextedit 默认文案_QTextEdit的paste
- 求约瑟夫环问题最后胜利者的一般解法以及数学推导方法
- 两种语言“争霸赛”,PHP速度领先C#
- Hadoop的安装教程,很详细
- 咸鱼CAD笔记—CAD基础操作
- Spring源码解析:Spring Aware 原理解析
- 无法打开源文件“QtWidgets/QMainWindow“的问题
- CentOS部署集群版Presto
- 水纹(涟漪)特效壁纸——程序+实现原理
热门文章
- RuntimeError: 1only batches of spatial targets supported (non-empty 3D tensors) but got targets of s
- spring cloud设置session过期时间
- PowerShell查看历史记录
- CentOS7 安装code::Blocks
- 怎么写标题更加吸引人(几种吸引人的标题类型写法)
- 若用链表存储一棵二叉树时,每个节点除数据域外,还有指向左孩子和右孩子的两个指针,在这种存储结构中,n歌节点的二叉树共有2N个指针域,其中有N-1个指针域存放了地址,有N+1个指针是空指针。
- python preference界面设置_Preference 实现设置界面
- 对话智领云CTO宋文欣:读懂云原生时代的数据中台
- 企业微信社群如何逆风翻盘
- Nginx expires缓存