久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

python 已知一個字符,在一個list中找出近似值或相似值實現模糊匹配

瀏覽:4日期:2022-08-05 09:28:15

已知一個元素,在一個list中找出相似的元素

使用場景:

已知一個其它來源的字符串, 它有可能是不完全與我數據庫中相應的字符串匹配的,因此,我需要將其轉為適合我數據庫中的字符串

使用場景太繞了, 直接舉例來說吧

隨便舉例:

按青島城市的城區來說,

我數據庫中存儲的城區是個list:[’市北區’, ’市南區’, ’萊州市’, ’四方區’]等

從其它的數據來源得到一個城區是:市北

我怎么得到與市北相似相近的市北區

解決方案:

In [1]: import difflibIn [2]: cityarea_list = [’市北區’, ’市南區’, ’萊州市’, ’四方區’]# 正常情況下,我是這么用的In [3]: a = difflib.get_close_matches(’市北’,cityarea_list,1, cutoff=0.7)In [4]: aOut[4]: [’市北區’]# 測試關鍵字改為市區,且要求返回相似度最高的兩個元素In [5]: a = difflib.get_close_matches(’市區’,cityarea_list,2, cutoff=0.7)In [6]: aOut[6]: [’市南區’, ’市北區’]# 測試關鍵字改為市區, 要求返回相似度最高的一個元素In [7]: a = difflib.get_close_matches(’市區’,cityarea_list,1, cutoff=0.7)In [8]: aOut[8]: [’市南區’]

詳解:

difflib是python 自帶的一個方法

返回的結果是個list

返回的list元素數量是可控的,

cutoff參數是0到1的浮點數, 可以調試模糊匹配的精度,一般為0.6就可以了, 1為精確匹配,

補充拓展:python列表進行模糊查詢

先看一下代碼

a=[’時間1’, ’時間2’, ’時間3’, ’ab’,’asds’]dd = [i for i,x in enumerate(a) if x.find(’s’)!=-1]print(dd)

需要注意的是這個方法只適合與都是字符串的,因為find是字符串重的方法, 如果list中有數字和None,都是不行的

以上這篇python 已知一個字符,在一個list中找出近似值或相似值實現模糊匹配就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
主站蜘蛛池模板: 中文字幕日韩一区二区不卡 | 一级一级黄色片 | 久草电影网 | 色婷婷av一区二区三区软件 | 看一级毛片视频 | 欧美区在线 | 91视频观看 | av天天操| 中国一级毛片免费 | 国产美女精品 | 亚洲成人av | 91在线看片 | 中文久久 | 久久久精品一区二区 | 欧美精品第一页 | 欧产日产国产精品一二 | 最新中文字幕久久 | 久久精品色欧美aⅴ一区二区 | 日韩欧美一级在线 | 一级在线观看视频 | 超碰成人在线免费 | 综合视频一区二区三区 | 国产精品一区人伦免视频播放 | 日日摸日日碰夜夜爽不卡dvd | 欧美精品一区二区三区一线天视频 | 亚洲精品午夜视频 | 欧美精品成人 | 久久一区二区三区四区 | 亚洲视频一区在线 | 国产一区二区 | 亚洲国产欧美一区二区三区久久 | 精品国产一区二区三区四 | av中文字幕在线播放 | 欧美一区2区三区4区公司二百 | av一区二区在线播放 | 久久综合伊人77777 | 国产91一区 | 日韩精品在线一区 | 国产剧情一区二区 | 久久综合九色综合欧美狠狠 | 九九九九九九精品任你躁 |