日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python实现电话号码映射

發(fā)布時間:2023/12/8 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python实现电话号码映射 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

問題

電話按鍵上面的每個數(shù)字都對應(yīng)著幾個字母,如果按下一個數(shù)字鍵代表輸入一個字母,那么輸入一個數(shù)字組成的字符串,它所產(chǎn)生的所有的可能的字母串是什么,有多少種

思路:

這個是一個遞歸的問題

下面是具體的實現(xiàn),為了更清晰看懂遞歸調(diào)用的過程,這里打印出來了每一次遞歸的過程:


#!usr/bin/env python #encoding:utf-8''' __Author__:沂水寒城 功能:電話號碼映射 '''phone_dict={'2':'abc','3':'def','4':'ghi','5':'jkl','6':'mno','7':'pqrs','8':'tuv','9':'wxyz'}def phone_num_map(one_str,phone_dict):'''電話號碼映射'''res_list=[]deep(one_str, "", res_list)return res_listdef deep(one_str, tmp_str, res_list):'''遞歸的遍歷過程'''if not one_str:res_list.append(tmp_str)returnfor c in phone_dict[one_str[0]]:deep(one_str[1:], tmp_str + c, res_list)print 'deep({0}, {1}, {2})'.format(one_str[1:], tmp_str + c, res_list)if __name__ == '__main__':one_str_list=['23','567','47','89','44']for one_str in one_str_list:one_list=phone_num_map(one_str,phone_dict)print one_listprint len(one_list)

結(jié)果如下:


deep(, ad, ['ad']) deep(, ae, ['ad', 'ae']) deep(, af, ['ad', 'ae', 'af']) deep(3, a, ['ad', 'ae', 'af']) deep(, bd, ['ad', 'ae', 'af', 'bd']) deep(, be, ['ad', 'ae', 'af', 'bd', 'be']) deep(, bf, ['ad', 'ae', 'af', 'bd', 'be', 'bf']) deep(3, b, ['ad', 'ae', 'af', 'bd', 'be', 'bf']) deep(, cd, ['ad', 'ae', 'af', 'bd', 'be', 'bf', 'cd']) deep(, ce, ['ad', 'ae', 'af', 'bd', 'be', 'bf', 'cd', 'ce']) deep(, cf, ['ad', 'ae', 'af', 'bd', 'be', 'bf', 'cd', 'ce', 'cf']) deep(3, c, ['ad', 'ae', 'af', 'bd', 'be', 'bf', 'cd', 'ce', 'cf']) ['ad', 'ae', 'af', 'bd', 'be', 'bf', 'cd', 'ce', 'cf'] 9 deep(, jmp, ['jmp']) deep(, jmq, ['jmp', 'jmq']) deep(, jmr, ['jmp', 'jmq', 'jmr']) deep(, jms, ['jmp', 'jmq', 'jmr', 'jms']) deep(7, jm, ['jmp', 'jmq', 'jmr', 'jms']) deep(, jnp, ['jmp', 'jmq', 'jmr', 'jms', 'jnp']) deep(, jnq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq']) deep(, jnr, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr']) deep(, jns, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns']) deep(7, jn, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns']) deep(, jop, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop']) deep(, joq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq']) deep(, jor, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor']) deep(, jos, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos']) deep(7, jo, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos']) deep(67, j, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos']) deep(, kmp, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp']) deep(, kmq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq']) deep(, kmr, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr']) deep(, kms, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms']) deep(7, km, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms']) deep(, knp, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp']) deep(, knq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq']) deep(, knr, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr']) deep(, kns, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns']) deep(7, kn, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns']) deep(, kop, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop']) deep(, koq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq']) deep(, kor, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor']) deep(, kos, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos']) deep(7, ko, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos']) deep(67, k, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos']) deep(, lmp, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp']) deep(, lmq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq']) deep(, lmr, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr']) deep(, lms, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms']) deep(7, lm, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms']) deep(, lnp, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp']) deep(, lnq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq']) deep(, lnr, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr']) deep(, lns, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns']) deep(7, ln, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns']) deep(, lop, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop']) deep(, loq, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop', 'loq']) deep(, lor, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop', 'loq', 'lor']) deep(, los, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop', 'loq', 'lor', 'los']) deep(7, lo, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop', 'loq', 'lor', 'los']) deep(67, l, ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop', 'loq', 'lor', 'los']) ['jmp', 'jmq', 'jmr', 'jms', 'jnp', 'jnq', 'jnr', 'jns', 'jop', 'joq', 'jor', 'jos', 'kmp', 'kmq', 'kmr', 'kms', 'knp', 'knq', 'knr', 'kns', 'kop', 'koq', 'kor', 'kos', 'lmp', 'lmq', 'lmr', 'lms', 'lnp', 'lnq', 'lnr', 'lns', 'lop', 'loq', 'lor', 'los'] 36 deep(, gp, ['gp']) deep(, gq, ['gp', 'gq']) deep(, gr, ['gp', 'gq', 'gr']) deep(, gs, ['gp', 'gq', 'gr', 'gs']) deep(7, g, ['gp', 'gq', 'gr', 'gs']) deep(, hp, ['gp', 'gq', 'gr', 'gs', 'hp']) deep(, hq, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq']) deep(, hr, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr']) deep(, hs, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs']) deep(7, h, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs']) deep(, ip, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs', 'ip']) deep(, iq, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs', 'ip', 'iq']) deep(, ir, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs', 'ip', 'iq', 'ir']) deep(, is, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs', 'ip', 'iq', 'ir', 'is']) deep(7, i, ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs', 'ip', 'iq', 'ir', 'is']) ['gp', 'gq', 'gr', 'gs', 'hp', 'hq', 'hr', 'hs', 'ip', 'iq', 'ir', 'is'] 12 deep(, tw, ['tw']) deep(, tx, ['tw', 'tx']) deep(, ty, ['tw', 'tx', 'ty']) deep(, tz, ['tw', 'tx', 'ty', 'tz']) deep(9, t, ['tw', 'tx', 'ty', 'tz']) deep(, uw, ['tw', 'tx', 'ty', 'tz', 'uw']) deep(, ux, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux']) deep(, uy, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy']) deep(, uz, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz']) deep(9, u, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz']) deep(, vw, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz', 'vw']) deep(, vx, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz', 'vw', 'vx']) deep(, vy, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz', 'vw', 'vx', 'vy']) deep(, vz, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz', 'vw', 'vx', 'vy', 'vz']) deep(9, v, ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz', 'vw', 'vx', 'vy', 'vz']) ['tw', 'tx', 'ty', 'tz', 'uw', 'ux', 'uy', 'uz', 'vw', 'vx', 'vy', 'vz'] 12 deep(, gg, ['gg']) deep(, gh, ['gg', 'gh']) deep(, gi, ['gg', 'gh', 'gi']) deep(4, g, ['gg', 'gh', 'gi']) deep(, hg, ['gg', 'gh', 'gi', 'hg']) deep(, hh, ['gg', 'gh', 'gi', 'hg', 'hh']) deep(, hi, ['gg', 'gh', 'gi', 'hg', 'hh', 'hi']) deep(4, h, ['gg', 'gh', 'gi', 'hg', 'hh', 'hi']) deep(, ig, ['gg', 'gh', 'gi', 'hg', 'hh', 'hi', 'ig']) deep(, ih, ['gg', 'gh', 'gi', 'hg', 'hh', 'hi', 'ig', 'ih']) deep(, ii, ['gg', 'gh', 'gi', 'hg', 'hh', 'hi', 'ig', 'ih', 'ii']) deep(4, i, ['gg', 'gh', 'gi', 'hg', 'hh', 'hi', 'ig', 'ih', 'ii']) ['gg', 'gh', 'gi', 'hg', 'hh', 'hi', 'ig', 'ih', 'ii'] 9 [Finished in 0.4s]

總結(jié)

以上是生活随笔為你收集整理的python实现电话号码映射的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。