如:dict={1:"华为科技技术有限公司",2:"中兴通讯有限公司",3:"华为通讯技术公司",4:"中国移动",5:"华为科技研究院".......}想找出值中包含“华为科技”的键,输出符合条件的值和对应的键。类似SQL中的:“select*fromtablewherecompanylike'%华为科技%',在python中咋实现??
2 回答
白衣染霜花
TA贡献1796条经验 获得超10个赞
遍历就可以了,复杂度是O(n)pythonkeys=[x[0]forxindict.items()if'华为科技'inx[1]]如果想要更快,去研究全文索引吧。不过你的like查询本来就是O(n)的。
慕桂英546537
TA贡献1848条经验 获得超10个赞
遍历,然后开头是华为科技的放一起就行了#coding=utf-8data={1:u"华为科技技术有限公司",2:u"中兴通讯有限公司",3:u"华为通讯技术公司",4:u"中国移动",5:u"华为科技研究院"}match_data={}for(key,value)indata.items():ifvalue.startswith(u'华为科技'):match_data[key]=valueprint(match_data)
添加回答
举报
0/150
提交
取消
