上次已經(jīng)進(jìn)行了圖解。本次將展示一些主要的函數(shù):
效果圖:
下面是服務(wù)器展示函數(shù):
#################################### 4 服務(wù)器展示函數(shù) srv_record_show () ################ def srv_record_show(srv_zone_name, svr_zones_dict): ############對(duì)sys名稱(chēng)進(jìn)行遍歷并加上數(shù)字編號(hào)########################### print('\n================================================================================') print('(%s)服務(wù)器信息如下 : ' % srv_zone_name) print('%-5s %-18s %-18s %-18s %-18s' % ('id', 'name', 'address', 'weight', 'maxconn')) svr_detail = svr_zones_dict[srv_zone_name] for k, v in enumerate(svr_detail, 1): ###用enumerate進(jìn)行unit_record展示### print('%-5s ' % k, end='') for kk, vv in v.items(): print('%-18s' % vv, end='|') print() print('\n=========================================================================') #########################################################################################效果圖如下:
主程序如下:
##################################主程序開(kāi)始############################################# if __name__ == '__main__': flag = True ### 腳本運(yùn)行的標(biāo)志 ### sys_zone_name_ky = 'backend' ### 系統(tǒng)的 名稱(chēng) ### srv_zone_name_vl = '' ### 服務(wù)器組的名稱(chēng) 例如:Oracle sys_cfg_file = 'configuretion.cfg' ###指定sys的配置文件### svr_zones_all_dict = {} ### svr_zones_all_dict字典 記錄各服務(wù)器的詳細(xì)信息 ### srv_zone_all_names_dict = {} ### svr_name_ky 字典(由svr_name_ky列表和 數(shù)字編號(hào) 組成的字典)### global_opt2 = '' srv_zone_name_vl_num = '' while flag: ### 循環(huán)M ### os.system('cls') ###清屏### print('\n \033[38m ================================================================') print(' \033[36m 歡迎使用 數(shù)據(jù)庫(kù)服務(wù)器 配置文件管理平臺(tái):\033[0m') print('\033[32m ================================================================') print(''' \033[39m 1. 查詢(xún)具體服務(wù)器\033[0m \033[34m 2. 添加具體服務(wù)器\033[0m \033[39m 3. 修改服務(wù)器列表\033[0m \033[34m 4. 刪除服務(wù)器列表\033[0m \033[31m 0. 退出\033[0m ''') print('================================================================') select_num = input('\033[30m 請(qǐng)按 數(shù)字鍵(0~4) 選擇:\033[0m') ##################################### 0 退出 exit ############################### if select_num == '0': flag = False continue while select_num in ['1','2','3','4'] : ### 循環(huán) 0 ### if select_num == '1':temp_vl = '查看' #temp_vl 為下一步顯示對(duì)應(yīng)選定的操作而設(shè)置的臨時(shí)參數(shù) if select_num == '2':temp_vl = '添加' if select_num == '3':temp_vl = '修改' if select_num == '4':temp_vl = '刪除' old_select_num = select_num print('\n %-8s ZONE 服務(wù)器組信息如下 : ' % sys_zone_name_ky) (srv_zone_all_names_dict, svr_zones_all_dict) = sys_show(sys_cfg_file) print('\033[32m ================================================================') input_content = input('\033[39;1m請(qǐng)輸入進(jìn)行\(zhòng)033[33;1m%s\033[0m操作的服務(wù)器組的編號(hào)或名稱(chēng)' \ '(返回主菜單,請(qǐng)輸入B or b):\033[0m' % temp_vl ) ############################## 對(duì)輸入值進(jìn)行過(guò)濾 ############################# (srv_zone_name_vl, tmp_flag) = content_filter(input_content, srv_zone_all_names_dict) if srv_zone_name_vl: ###顯示對(duì)應(yīng) srv_zone 下的服務(wù)器列表### srv_record_show(srv_zone_name_vl, svr_zones_all_dict) if tmp_flag == False : break ##################################### 1 查詢(xún)服務(wù)器信息 ###################### if select_num == '1': continue ##################################### 2. 更新服務(wù)器信息 ##################### while select_num == old_select_num and srv_zone_name_vl: ### 循環(huán)1 ### if select_num in [ '3', '4' ]: ###判斷修改、刪除選項(xiàng)中輸入的服務(wù)器編號(hào)準(zhǔn)確性### srv_zone_name_vl_num = input('\033[32;1m請(qǐng)輸入\033[33;1m%s\033[0m的服務(wù)器的編號(hào),((N|n)返回上級(jí)菜單):\033[0m'% temp_vl) if srv_zone_name_vl_num in ['N', 'n']: break if len(srv_zone_name_vl_num) != 0: srv_zone_name_vl_num = input_str2int(srv_zone_name_vl_num) #####################指定具體的server編號(hào)進(jìn)行判斷##### elif srv_zone_name_vl_num not in range(1, len(svr_zones_all_dict[srv_zone_name_vl]) + 1): print('超出范圍,請(qǐng)重新輸入?。?!') continue ###srv_zone_name_vl_num不在在服務(wù)器組個(gè)數(shù)范圍之內(nèi),提示并重新選擇### if select_num in [ '2','3' ]: ###添加和修改服務(wù)器時(shí)進(jìn)行的操作步驟:更新服務(wù)器列表### update_srv_dict = OrderedDict() (update_srv_dict, select_num) = update_svr_dict(update_srv_dict,select_num) if select_num in [ '4' ]: print(svr_zones_all_dict[srv_zone_name_vl][srv_zone_name_vl_num - 1]) #顯示被選中刪除的服務(wù)器列表# if select_num == old_select_num : ###如果在以上操作中沒(méi)有進(jìn)行取消操作,則選擇參數(shù)不會(huì)變化,維持原來(lái)的用戶(hù)操作。### update_opt = input('(Y|y)\033[33;1m%s\033[0m此服務(wù)器,任意鍵取消:' % temp_vl) if update_opt in ['y','Y']: if select_num == '2': svr_zones_all_dict[srv_zone_name_vl].append(update_srv_dict) if select_num == '3': svr_zones_all_dict[srv_zone_name_vl][srv_zone_name_vl_num - 1] =update_srv_dict if select_num == '4': del svr_zones_all_dict[srv_zone_name_vl][srv_zone_name_vl_num - 1] wrt2cfg(sys_cfg_file, svr_zones_all_dict) srv_record_show(srv_zone_name_vl, svr_zones_all_dict) print('\033[33;1m%s\033[0m成功!' % temp_vl) else : ###如果在添加、修改、刪除過(guò)程中,選擇了取消,則select_num=5 ,對(duì)應(yīng)操作皆被取消### print("\033[33;1m%s\033[0m被取消" % temp_vl) global_opt2 = input('(Y|y)繼續(xù)\033[33;1m%s\033[0m本組服務(wù)器,(N|n)返回重新選擇服務(wù)器組,(B|b)返回主菜單:' % temp_vl) ###以上所有操作完成后,根據(jù)用戶(hù)需求,修正select_num 數(shù)值,提示用戶(hù)下一步操作。### if global_opt2 in ['B', 'b']: ### 遇到select_num = '5'時(shí),返回主菜單。### select_num = '5' print("返回主菜單。") elif global_opt2 in ['N', 'n']: ###用戶(hù)繼續(xù)選擇服務(wù)器組,繼續(xù)進(jìn)行對(duì)原來(lái)的操作select_num = old_select_num,。### select_num = old_select_num break else: select_num = old_select_num ###在原來(lái)選擇的服務(wù)器組中,繼續(xù)進(jìn)行操作。### else: sys.exit('\033[36m 程序退出,歡迎使用,謝謝! \033[0m') #########################################################################################部分截圖如下:
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
分享題目:Python讀寫(xiě)一個(gè)配置文件的實(shí)例分解(二)-創(chuàng)新互聯(lián)
鏈接URL:http://chinadenli.net/article40/depceo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、云服務(wù)器、搜索引擎優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、微信小程序、App開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容