python如何实现列表的搜索功能

发布网友

我来回答

3个回答

热心网友

1:

for name in li:
    print dict[name]

2:

name="xxx"
for i in workes:
    if i["Name"]=name:
        for x in i:
            print x,":",i[x]
    else:
        print "name not find "

热心网友

workers.sort(key=lambda x:x['Name'])
name=raw_input("please input Name:").strip()
found=False
low=0
high=len(workers)-1
mid=(high+low)/2
while low<=high:
    if workers[mid]['Name']<name:
        low=mid+1
    elif workers[mid]['Name']>name:
        high=mid-1
    else:
        found=True;
        break
    mid=(low+high)/2
if found:
    workman=workers[mid]
    print workman['Name']+":\t",
    for key ,value in workman.items():
        print key+":"+value+"\t",
else:
    print "Not Find this man %s"%name

热心网友

workers_dict = dict([(w["Name"], w) for w in workers])
for name in li:
    print workers_dict.get(name)

 将列表转换为字典,可以高效查找;且保持良好的代码可读性

追问

大神,你的用不了啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com