python实现对列表进行模糊查询


自动化测试中,需要对特定列表中的数据进行模糊查询,从而筛选出完整值进行返回,故整理如下两种方法;

 

方法一:适用于列表值为字符串的模糊查询,实例如下

list1 = ['qqaabb', 'wweerr', '121', 'qbcd', 'plqs']
data = [x for i,x in enumerate(list1) if x.find('qs') != -1]
print(data) # 返回值为:['plqs']

 

方法二:使用python自带的difflib库,实例如下

import difflib


list1 = ['qqaabb', 'wweerr', '121', 'qbcd', 'plqs']
data = difflib.get_close_matches('qs', list1, 1, cutoff=0.5)
print(data) # 返回值为:['plqs']

说明:cutoff参数是0到1的浮点数, 可以调试模糊匹配的精度, 1为精确匹配,

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM