员工信息增删改查

  1 #Author guixin
  2 def find():
  3     '''
  4     查询语法如下:
  5     find name,age from staff_table where age > 22
  6     find * from staff_table where dept = IT
  7     find * from staff_table where enroll_date like 2013
  8     '''
  9     data = input("查询:")
 10     data1 = data.split()
 11     if len(data1) == 8 :
 12         if data == ("find name,age from staff_table where age > %s"%(data1[7])):
 13             f = open('staff_db','r')
 14             list1 = []
 15             count = 0
 16             for line in f:
 17                 i = line.strip().split(',')
 18                 if int(i[2]) > int(data1[7]):
 19                     list1.append(i)
 20             for line in list1:
 21                 count += 1
 22             print("满足条件的数量:%s"%(count))
 23             for line in list1:
 24                 print(line)
 25         elif data == ("find * from staff_table where dept = %s"%(data1[7])):
 26             f = open('staff_db','r')
 27             list2 = []
 28             count = 0
 29             for line in f:
 30                 i = line.strip().split(',')
 31                 if i[4] == data1[7]:
 32                     list2.append(i)
 33             for line in list2:
 34                 count += 1
 35             print("满足条件的数量:%s"%(count))
 36             for line in list2:
 37                 print(line)
 38         elif data == ("find * from staff_table where enroll_date like %s"%(data1[7])):
 39             list3 = []
 40             list4 = []
 41             count = 0
 42             f = open('staff_db','r')
 43             for line in f:
 44                 i = line.strip().split(',')
 45                 list3.append(i)
 46             for line in list3:
 47                 i = line[5].split('-')
 48                 if i[0] == data1[7]:
 49                     list4.append(line)
 50             for line in list4:
 51                 count += 1
 52             print("满足条件的数量:%s"%(count))
 53             for line in list4:
 54                 print(line)
 55         else:
 56             print("输入有误")
 57     else:
 58         print("输入有误")
 59 def add():
 60     '''
 61     注释信息:
 62     可创建新员工记录,以phone做唯一键,staff_id需自增
 63     新增方法:
 64     Gui Xin,22,13977777777,it,1999-1-1
 65     '''
 66     data = input("添加:")
 67     data1 = data.split(',')
 68     print(data1)
 69     if len(data1) == 5:
 70         list5 = []
 71         f = open("staff_db",'r+')
 72         for line in f:
 73             i = line.strip().split(',')
 74             list5.append(i[3])
 75         if data1[2] in list5:
 76             print("这条记录已存在")
 77         else:
 78             staff_id = str(len(list5)+1)
 79             data1.insert(0,staff_id)
 80             data1 = ', '.join(data1)
 81             f.write('\n')
 82             f.write(data1)
 83     else:
 84         print("输入有误")
 85 def delete():
 86     """
 87     注释信息:
 88     可删除指定员工的信息记录,输入员工ID即可删除
 89     del * from staff_db where id = 1
 90     """
 91     data = input("删除:")
 92     data1 = data.split()
 93     f = open('staff_db','r+')
 94     if len(data1) == 8:
 95         if data == ("del * from staff_db where id = %s"%(data1[7])):
 96             list6 = []
 97             for line in f:
 98                 i = line.strip().split(',')
 99                 list6.append(i)
100                 if int(i[0]) == int(data1[7]):
101                     list6.remove(i)
102                     print("删除记录:%s"%(i))
103             print(list6)
104         else:
105             print("输入有误")
106     else:
107         print("输入有误")
108 def update():
109     '''
110     注释信息:可修改员工信息,语法如下
111     update staff_table set dept = HR where dept = IT
112     update staff_table set age = 18 where name = 'Alex Li'
113     '''
114     data = input("更新:")
115     data1 = data.split()
116     if len(data1) == 10:
117         if data == ("update staff_table set dept = %s where dept = %s"%(data1[5],data1[9])):
118             f = open("staff_db",'r+')
119             for line in f:
120                 i = line.strip().split(',')
121                 if i[4] == data1[9] :
122                     i[4] = data1[5]
123                     print(i)
124         elif data == ("update staff_table set age = %s where name = %s"%(data1[5],data1[9])):
125             f = open("staff_db",'r+')
126             for line in f:
127                 i = line.strip().split(',')
128                 if i[1] == data1[9]:
129                     i[2] = data1[5]
130                     print(i)
131         else:
132             print("输入有误")
133     else:
134         print("输入有误")
135 data = input("/查询/添加/删除/更新:")
136 if data == "查询":
137     find()
138 elif data == "添加":
139     add()
140 elif data == "删除":
141     delete()
142 elif data == "更新":
143     update()
144 else:
145     print("输入有误")

 

转载于:https://www.cnblogs.com/guixin/p/8403599.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值