1. 程式人生 > >字串解析:號碼歸屬地查詢

字串解析:號碼歸屬地查詢

通過解析字串得到號碼,和歸屬地,存入字典。

str1 = '''5582|1860101|010|北京市|北京聯通GSM卡
5583|1860100|010|北京市|北京聯通GSM卡
5584|1368141|010|北京市|北京移動神州行卡
5585|1860111|010|北京市|北京聯通GSM卡
5586|1358198|010|北京市|北京移動動感地帶卡
5587|1361139|010|北京市|北京移動預付費卡
5588|1361138|010|北京市|北京移動神州行卡
5591|1360110|010|北京市|北京移動全球通卡
5748|1364110|010|北京市|北京移動神州行卡
10186|1581584|020|廣東省廣州市|廣東移動全球通卡
15046|1391897|021|上海市|上海移動全球通卡
17250|1502207|022|天津市|天津移動全球通卡
21137|1345272|023|重慶市萬州|重慶移動大眾卡
22700|1347812|024|遼寧省瀋陽市|遼寧移動大眾卡
24256|1377065|025|江蘇省南京市|江蘇移動全球通卡
26360|1898606|027|湖北省武漢市|湖北電信CDMA卡
28709|1860802|028|四川省成都市|四川聯通GSM卡
30641|1552961|029|陝西省西安市|陝西聯通GSM卡
31700|1563007|0310|河北省邯鄲市|河北聯通GSM卡
33360|1583396|0311|河北省石家莊市|河北移動全球通卡
34825|1508122|0312|河北省保定市|河北移動全球通卡
35363|1551235|0313|河北省張家口|河北聯通GSM卡
37700|1331326|0316|河北省廊坊市|河北電信CDMA卡
43500|1350358|0358|山西省呂梁市|山西移動全球通卡
43908|1553625|0359|山西省運城市|山西聯通GSM卡
44521|1335360|0370|河南省商丘市|河南電信CDMA卡
50078|1509369|0378|河南省開封市|河南移動全球通卡
53603|1583981|0398|河南省三門峽|河南移動全球通卡
53916|1335897|0410|遼寧省鐵嶺市|遼寧電信CDMA卡
55248|1554254|0411|遼寧省大連市|遼寧聯通GSM卡
58618|1374272|0427|遼寧省盤錦市|遼寧移動全球通卡
58932|1554183|0429|遼寧省葫蘆島|遼寧聯通GSM卡
60268|1340475|0431|吉林省長春市|吉林移動大眾卡'''
#建立一個空字典,用來儲存資訊
dict1 = {}
# 遍歷字串,通過換行進行切割
for i in str1.splitlines():
    #按照'|'進行切割,得出的是列表
    #如['53603', '1583981', '0398', '河南省三門峽', '河南移動全球通卡']
    b = i.split('|')
    #根據下標找出號碼和歸屬地,儲存進字典
    dict1[b[1]] = b[-1]
while True:
    user = input('請輸入您要查詢的號碼:')
    #遍歷字典,根據鍵輸出值
    for k,v in dict1.items():
        if dict1[user]==dict1[k]:
            print(v)