zoukankan      html  css  js  c++  java
  • python--------文件处理之增删改查--------作业用函数

    1,刚学到函数,用的还不熟练,只能以简单的函数调用来实现.

    2,  还是有bug。

    3,代码:

      1 def add():
      2     '''
      3     添加一条语句
      4 
      5     '''
      6 
      7     choice = input("please your input is {}  : ")
      8     # {"backend":"www.oldboy20.org","record":{"server":1111,"weight":2222,"maxconn":3333}}
      9     dic = eval(choice)  # 把字符串转成字典
     10     title = dic['backend']  # "www.oldboy20.org"
     11     record = dic['record']
     12     r_s = '        server %s weight %s maxconn %s
    ' 
     13           % (record['server'], record['weight'], record['maxconn'])
     14 
     15     with open("haproxy.conf", encoding="utf-8") as f_read, open("test3", mode="w", encoding="utf-8") as w_read:
     16         for line in f_read:
     17             w_read.write(line)
     18             if line.startswith('backend') and title in line:
     19                 # print('11111>')
     20                 w_read.write(r_s)
     21                 # w_read.write('=====>')
     22         w_read.flush()
     23 
     24 
     25 
     26 def search():
     27     '''
     28     查询
     29      
     30     '''
     31 
     32     list = []
     33     flag = False
     34     input1 = input("plesae input 'www.oldboy1.org' :")
     35     with open("haproxy.conf", encoding="utf-8") as f_read:
     36         for line in f_read:
     37             if line.startswith("backend") and input1 in line:
     38                 flag = True
     39 
     40                 continue
     41 
     42             if line.startswith("backend"):
     43                 break
     44             if flag:
     45                 list.append(line.strip())
     46     print("hello".center(50, "-"))
     47 
     48     for i in list:
     49         print(i)
     50 
     51 
     52 
     53 def delete():
     54     '''
     55     删除
     56     
     57     '''
     58 
     59     choice = input("please your input  is {} :")
     60     # {"backend":"www.oldboy20.org","record":{"server":1111,"weight":2222,maxconn:3333}}
     61     dic = eval(choice)  # 把输入的字符串转成字典
     62     tltle = dic["backend"]
     63     tetle1 = dic["record"]  #这个没有用
     64     with open("haproxy.conf", encoding="utf-8") as f_read, open("test5", "w", encoding="utf-8") as w_write:
     65 
     66         for line in f_read:
     67             w_write.write(line)
     68             if line.startswith("backend") and tltle in line:
     69                 # w_write.write(line)
     70                 break
     71 
     72 
     73 def change():
     74     '''
     75     修改一条语句
     76      
     77     '''
     78 
     79     choice = input("please your input is {} :")
     80     # {"backend":"www.oldboy20.org","record":{"server":1111,"weight":2222,"maxconn":3333}}
     81     dic = eval(choice)  #把输入的字符串转成字典
     82     tltel = dic["backend"]
     83     tltel1 = dic["record"]
     84     dic["record"]["server"] = "0000"
     85     dic["record"]["weight"] = "0000"
     86     dic["record"]["maxconn"] = "0000"
     87     # print(dic)
     88     #格式化字符串
     89     r_s = "        server %s weight %s maxconn %s" % (tltel1["server"], tltel1['weight'], tltel1["maxconn"])
     90     with open("haproxy.conf", encoding="utf-8") as f_read, open("test6", mode="w", encoding="utf-8") as w_write:
     91         for line in f_read:
     92             w_write.write(line) # 把line中的字符串写到w_write中
     93             if line.startswith("backend") and tltel in line: #判断 line中字符串否以“backend”开头,并且满不满足tetle在这行
     94                 w_write.write(r_s)  #把字符串写入到w_rite中
     95                 break   #跳出循环
     96 
     97 
     98 def can_msg():
     99     '''
    100     菜单
    101      
    102     '''
    103     msg = '''
    104      1,search: 查询
    105      2,add   : 添加
    106      3,delete: 删除
    107      4,change: 修改
    108      0,exit(0):退出
    109     
    110     '''
    111     print(msg)
    112 
    113 def main1():
    114     '''
    115     主函数
    116      
    117     '''
    118     while True :
    119         can_msg()
    120         choice = input("please your input choice  or exit(0):")
    121         if choice == "0" :
    122             print("good bye".center(50,"-"))
    123             print("再_见".center(50,"-"))
    124             exit()
    125         elif choice == "1":
    126             search()
    127         elif choice == "2":
    128             add()
    129         elif choice == "3":
    130             delete()
    131         elif choice == "4":
    132             search()
    133         else:
    134             print("请输入数字 谢谢 ".center(50, "-"))
    135             continue
    136 
    137 
    138 
    139 
    140 
    141 if __name__ == '__main__':
    142      main1()
  • 相关阅读:
    JavaScript中的面向对象
    操作文件
    PDO 数据访问抽象层
    Jquery事件
    Jquery
    面向对象的五大基本原则是
    ioc依赖注入的原则
    java3
    java基础2
    java基础
  • 原文地址:https://www.cnblogs.com/gaoyuan111/p/6681374.html
Copyright © 2011-2022 走看看