instance5:工商管理系统(作业)


实现效果:

从info.txt文件中读取员工及其工资信息,最后将修改或增加的员工工资信息也写入原info.txt文件。
效果演示:
1. 查询员工工资
2. 修改员工工资
3. 增加新员工记录
4. 退出
>>:1
请输入要查询的员工姓名(例如:Alex):Alex
Alex的工资是:100000。
1. 查询员工工资
2. 修改员工工资
3. 增加新员工记录
4. 退出
>>:2
请输入要修改的员工姓名和工资,用空格分隔(例如:Alex 10):Alex 10
修改成功!
1. 查询员工工资
2. 修改员工工资
3. 增加新员工记录
4. 退出
>>:3
请输入要增加的员工姓名和工资,共空格分割(例如:Eric 100000):Eric 100000
增加成功!
1. 查询员工工资
2. 修改员工工资
3. 增加新员工记录
4. 退出
>>:4
再见!

工资管理系统

Alex 100000

Rain 80000

Egon 50000

Yuan 30000

-----以上是info.txt文件-----

add_list=[]
#print(add_list)
modify_list=[]
#print(modify_list)
#f_file=open('info.txt','r+',encoding='utf-8')
#f_add=f_file.readlines()
while True:
    choice=input(" 1.查询员工工资 \n 2.修改员工工资 \n 3.增加新员工记录 \n 4.退出 \n 请选择>>")
    if choice=='1':
        with open("info.txt", 'r+', encoding="utf-8") as f: 
            name_salary = f.readlines()
        account = input('请输入要查询的员工姓名(例如:Alex):')
        for i in name_salary:
            (name,salary)=i.strip('\n').split()
            if account==name or account in add_list:
                print('%s的工资是%s'%(name,salary))
                break
        else:
            print('用户不存在')
    elif choice=='2':
        with open("info.txt", 'r+', encoding="utf-8") as f: 
            f_= f.readlines()
        old_name=input('输入要修改的员工名字:')
        for i in f_:
            (name,salary) = i.strip('\n').split()
            if old_name==name:
                modify_name,modify_salary=input('请输入要修改的员工姓名和工资,用空格分隔(例如:Alex 10):').strip('\n').split()
                modify_list.append([modify_name,modify_salary])#为了解决文件打开的时候不能更新信息的问题,在内存里加个表格
                print(modify_list)
                with open("info.txt", 'w', encoding="utf-8") as f1:
                    for item in f_:
                        item=item.replace(salary,modify_salary)
                        f1.write(item)
                    print('修改成功')
                    break
        else:
            print('用户不存在')
    elif choice=='3':
        f=open('info.txt','r+',encoding='utf-8')
        f_add=f.readlines()
        add_name=input('输入要添加的用户名称:')
        for i in f_add:
            (name,salary) = i.strip('\n').split()
            if add_name==name or add_name in add_list:
                print('不能添加已经存在的用户')
                break
        else:
            append_name=input('请输入要增加的员工姓名和工资,使用空格分割(例如:Eric 100000):Eric 100000:').strip('\n')
            add_list.append(append_name)
            f.write(append_name)
            f.write('\n')
            f.flush()
            f.close()
            print('添加成功')
            print(add_list)
            pass
    elif choice=='4':
        print('程序已退出')
        exit()
    else:
        print('无效选项')

 


posted @ 2018-01-24 19:21  Deakin-DJ  阅读(159)  评论(0编辑  收藏  举报