1つの インポートOS 2 DEF file_handler(バックエンド、RES =なし、TYPE = ' フェッチ' ):#書き込みを機能データ簡素化するために 3 かのタイプ== ' フェッチ' : 4を 開いた(と' proxy.conf '、' R ' )read_fとして: 5 タグ= Falseの 6 RET = [] 7 7 ため READ_LINE でread_f: 8 8 もしread_line.strip()= backend_data: 9 タグ= 真 10が 引き続き 11 かのタグと read_line.startswith(' バックエンド' ): 12 休憩 13 であればタグ: 14 プリント(' \ 033 [1; 43メートルの%S \ 033 [0メートル'%のREAD_LINE、=エンド' ' ) 15 ret.append(READ_LINE) 16 リターンRET 17 かのタイプ== ' 変更' : 18 オープンと(' proxy.conf '、' R ')オープン(とread_fとして、' proxy.conf_new '、' W ' write_fとして): 19 = 22タグ偽 20 23 has_write == 偽 21 26 用 READ_LINE でread_f。 22 27 もし read_line.strip()= backend_data: 23 28タグ= 真 24は、 引き続き 25を 場合タグと read_line.startswith(' バックエンド' ): 26 タグ= Falseの 27 なら ないタグ: 28 write_f.write(READ_LINE) 29 他: 30 なら ないhas_write: 31 のためのレコードにおけるRES: 32 write_f.write(レコード) 33 has_write == 真 34 35 DEF フェッチ(データ): 36 2 プリント(' \ 033 [1; 43mThis機能\ 033 [0メートルをフェッチ' ) 37 3 プリント(' \ 033 [1; 43mTheデータが\ 033 [0メートルである' ) 38 5 backend_data = ' バックエンド%S '%のデータ 39 6 戻りfile_handler(backend_data) 40 9 41 10 DEF (追加): 42 11 パス 43 12 デフ変化(): 44 13、バックエンドデータ= [0] [ 'バックエンド' ] 45 14 backend_data = ' バックエンド%S '%バックエンド 46 15 old_server_record = ' %sserver%S%重量%のMAXCONN%S \ n '%(' ' * 8、データ[0] [ ' 記録' ] 【' サーバ' ]、DATA [0] [ ' 記録' ] [ ' サーバ' ]、DATA [0] [ ' 記録' ] [ ' 体重' ]、DATA [0] [ ' 記録'] [' MAXCONN ' ]) 47 16 new_server_record = ' %sserver%S%重量%のMAXCONN%S '%('' * 8、データ[1] [ ' 記録' ] [ ' サーバ' ]、データ[1]〜[ ' 記録' ] [ ' サーバ' ]、DATA [1] [ ' 記録' ] [ ' 体重' ]、DATA [1] [ ' 記録' ] [ ' MAXCONN ']) 48 17 プリント('ユーザが変更することをデータは%sである:'%old_server_record) 49の RESを= フェッチ(バックエンド) 50 プリント(' RESフロンデータは%sである:'%のRES) 51 18 であれば解像度== 0 または old_server_record ない でRES : 52 19 リターン ' あなたが見つけるコンテンツはありません' 53 他には: 54 20インデックス= res.index(old_server_record) 55の 21 RES [インデックス] =new_server_record 56 24 res.insert(0、' %S \ n '%のbackend_data) 57 25 リターン file_handler(backend_data、RES = RES、変化する) 58 59 os.rename(' proxy.conf '、' proxy.conf.back ' ) 60 os.rename(' proxy.conf_new '、' proxy.conf ' ) 61 os.remove(' proxy.conf.back ' ) 62 29 DEF)(削除: 63である 30 パス 64 31があるIF __name__ == ' __main__ ':#裁判官ザ真実 65 32 MSG = 66 33である ' '' 67 34である1:クエリ 68 35 2:追加 69 変更:36 3 70 37 4:削除 71は、 38が5:出口 72 39 '' ' 73である 40 msg_dic = { 74 41である ' 1 ' :、FETCH 75 42である ' 2 ':追加、 76 43 ' 3 ' :変更、 77 44 ' 4 ' :削除 78 45 } 79 46 真中: 80 47 印刷(MSG) 81 48選択=入力(' を入力して下さいあなたの選択:' ).strip() 82 49 もし ない選択肢:引き続き 83 50 もし選択== ' 5 ':休憩 8451件のデータ=入力(' 入力してくださいあなたのデータ:' ).strip() 85 52 であれば選択肢= 1! : 86件の 53データ= のeval(データ) 87 54 msg_dic [選択](データ) 88 55 データ#input:[ {バックエンド:www.oldboy1.org、レコード:サーバ2.2.2.4 2.2.2.4 20重量MAXCONN 3000}、{バックエンド:www.oldboy1.org、レコード:サーバ2.2.2.5 2.2.2.5 20重量MAXCONN 3000}]
Day10:ウェブサイトのフェッチと変更機能
おすすめ
転載: www.cnblogs.com/zxver/p/12168515.html
おすすめ
ランキング