工资管理系统
Alex 100000
Rain 80000
Egon 50000
Yuan 30000
-----以上是info.txt文件-----
实现效果:
从info.txt文件中读取员工及其工资信息,最后将修改或增加的员工工资信息也写入原info.txt文件。
效果演示:
1. 查询与修改员工工资
2. 增加新员工工资
3. 删除员工记录
4. 退出
源代码如下:
import os
def GetTcode(): #原文件
f_dic = {}
with open('info','r',encoding='utf-8') as f:
for line in f:
line = line.strip() #去掉收尾空格
if not len(line): #判断是否是空行
continue
else:
f_list = line.split()
f_dic[f_list[0]] = f_list[1]
return f_dic
GetTcode()
#查询与修改
def select():
fa_dic = GetTcode()
choice1 = input('请输入用户名,输入“q”返回上一级>>:')
while choice1 !='q':
for a in fa_dic:
if choice1 == a:
print(fa_dic[a])
print('1.确认\n2.修改')
choice2 = input('请选择>>:')
while choice2 != '1':
choice3 = input('请输入修改后的金额>>:')
while choice3 != 'q':
fa_dic[a] = choice3
break
break
choice1 = input('请继续输入用户名,输入“q”返回上一级>>:')
break
else:
print('用户不存在')
choice1 = input('请重新输入用户名,输入“q”返回上一级>>:')
#增加
def add():
choice1 = input('请输入要添加的用户,输入“q”返回上一级>>:')
while choice1 != 'q':
choice2 = input('请输入薪金,输入“q”返回上一级>>:')
while choice2 != 'q':
with open('info','a+',encoding='utf-8') as f:
f.write('\n')
f.write(choice1)
f.write(' ')
f.write(choice2)
break
choice1 = input('请继续输入要添加的用户,输入“q”返回上一级>>:')
#删除
def delete():
choice1 = input('请输入要删除的用户,输入“q”返回上一级>>:')
while choice1 != 'q':
fa_dic = GetTcode()
if choice1 in fa_dic.keys():
with open('info2', 'w+', encoding='utf-8') as f_new:
for a in fa_dic:
if choice1 == a:
continue
else:
f_new.write(a)
f_new.write(' ')
f_new.write(fa_dic[a])
f_new.write('\n')
os.remove("info")
os.rename("info2","info")
else:
print('用户不存在')
choice1 = input('请继续输入要删除的用户,输入“q”返回上一级>>:')
#主程序
def begin():
while True:
print('1.查询与修改\n2.增加\n3.删除\n4.退出')
choice = input('请输入>>:')
if choice == '1':
select()
elif choice == '2':
add()
elif choice == '3':
delete()
elif choice == '4':
break
else:
print('输入错误,请重新输入')
begin()