給定一組(串)數據,根據輸入得號碼,查詢歸屬地 如有錯誤,感謝指正! ...
給定一組(串)數據,根據輸入得號碼,查詢歸屬地
1 def num_info(num): 2 info0 = """5583|1860100|010|北京市|北京聯通GSM卡 3 5584|1368141|010|北京市|北京移動神州行卡 4 15046|1391897|021|上海市|上海移動全球通卡 5 17250|1502207|022|天津市|天津移動全球通卡""" 6 #根據上面的字元串,每一條個人信息的結尾都有一個“卡”字,我們可以按照這個字來將字元串切割,也可以按照行來切 7 # (如果給你的字元串沒有換行,我覺得按照“卡”字來切是極好的) 8 9 lt0 = list(info0.split("卡")) 10 #將給定的字元串按照“卡”字來切割,轉換成列表,賦值給lt0 11 12 dict0 = {} 13 #建立一個空字典(下麵要用) 14 15 for i in range(len(lt0)-1): 16 #用i來來遍歷lt0列表的長度(為什麼要長度減一呢?因為按照“卡”字來切,列表下標為-1的那個元素是空的) 17 #下麵要用的元素下標,如果不減一,那麼最後一個元素是空的,一旦使用下標遍歷到最後一個元素, 18 # 就會報錯(因為列表中的最後一個元素是空的:自己可以試一下,列印出來看一下) 19 20 # 下麵這一行代碼是切割列表中的元素,按照“|”來切,將列表中第i個元素切割完賦值個lt1(list) 21 lt1 = lt0[i].split("|") 22 23 #添加字典的鍵(錄入切割好lt1列表下標為1的元素), 24 # 和字典的值(lt1列表的最後一個元素,下標為-1,因為切割時把卡字切掉了,在這裡加上) 25 dict0[lt1[1]] = "{}卡".format(lt1[-1]) 26 27 #列印出來(將需要查詢的數字使用字典的get函數查詢出來,如果沒有查詢到,會返回預設值none,這裡可以自定義返回內容) 28 print("你查詢的號碼屬於:{}".format(dict0.get("{}".format(num),"查詢的號碼不存在!"))) 29 num1 = input("請輸入你要查詢的號碼前七位:") 30 num_info(num1)
如有錯誤,感謝指正!