# -*- coding:utf8 -*- def select(data): # print('from select') # print('用户查询的数据是:%s' %data) with open('ha.conf','r') as read_file: tag=False ret = [] for text in read_file: result=('backend %s'%data) if text.strip()==result: tag=True continue if text.startswith('backend'): tag=False if tag: print('%s' %text,end='') ret.append(text) return ret def insert(): print('from insert') def update(data): # print('from update') # print('用户输入的字符是:%s' %data) backend=data[0]['backend'] old_record='%sserver %s %s weight %s maxconn %s%s' %(' '*8, data[0]['record']['server'], data[0]['record']['server'], data[0]['record']['weight'], data[0]['record']['maxconn'],'\n') new_record = '%sserver %s %s weight %s maxconn %s%s' % (' ' * 8, data[1]['record']['server'], data[1]['record']['server'], data[1]['record']['weight'], data[1]['record']['maxconn'], '\n') print('需要查询记录为:',old_record) # server 2.2.2.5 2.2.2.5 weight 30 maxconn 4000 res=select(backend) if not res or old_record not in res:#判断输入内容是否存在于backend下方 print ('用户修改的记录不存在!') else:#修改列表内容 index=res.index(old_record)#使用index方法确定需要修改的内容的索引位置 res[index]=new_record#将res列表中的 [索引位置] 直接修改为新的记录 with open('ha.conf','r') as read_f,\ open('ha.conf_new','w') as write_f: for read_line in read_f: tag=False#设置tag状态标识符 if not tag:#当tag等于False时,继续向新文件写入源文件内容 write_f.write(read_line) print('最终的结果是---》',res) def delete(): pass def quit(): print('感谢使用!') if __name__=='__main__': msg_dic={ '1':select, '2':insert, '3':update, '4':delete, '5':quit, } # msg_dic[msg]() while True: print(''' 请选择功能: 1.查询 2.插入 3.修改 4.删除 5.退出 ''') msg = input('请选择对应功能:').strip() # res=msg_dic[msg] if not msg:continue data = input('请输入你需要查询的字符:').strip() if msg !='1': data=eval(data) if msg=='5': msg_dic[msg]() break elif msg=='1': print('你想查询的字符是:%s' % data) msg_dic[msg](data) break elif msg=='2': msg_dic[msg]() break elif msg=='3': msg_dic[msg](data) break # [{'backend':'www.baidu.com','record':{'server':'2.2.2.4','weight':20,'maxconn':3000}},{'backend':'www.baidu.com','record':{'server':'2.2.2.5','weight':30,'maxconn':4000}}]
S3 Day21 查询修改程序
猜你喜欢
转载自blog.51cto.com/bobo5900pro/2309577
今日推荐
周排行