Alexandru Palade wrote:
> lookfor = 'dfsdf'
> for item, value in kev.items():
>        if lookfor in value:
>                print item
>                print value.index(lookfor)
>                break   # assuming you only want one result

slight variation:

lookfor = 'dfsdf'
for item, value in kev.items():
    for i, val in enumerate(value):
        if val == lookfor:
            print item, i
            break   # assuming you only want one result
else:
    print lookfor, 'not found'

This is what for-else is meant for.

If you want 0 to many lookfor occurences,

lookfor = 'dfsdf'
hits = []
for item, value in kev.items():
    for i, val in enumerate(value):
        if val == lookfor:
            hits.append((item, i))

print hits

One-liner fanatics would, of course, rewrite this as

hits = [(item, i) for item, value in kev.items() for i, val in enumerate(value) if val == lookfor]

Terry Jan Reedy



tjr

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to