[Tutor] using "in" with a dictionary
Steve Willoughby
steve at alchemy.com
Wed Sep 29 00:12:50 CEST 2010
On 28-Sep-10 14:58, Alex Hall wrote:
> Hi all, yet again:
> I have a dictionary that will look something like:
> d={
> (1,2):"a",
> (3,4):"b"
> }
>
> How can I say:
> if (1,2) in d: print d[(1,2)]
Did you try this? It looks fine to me as it is.
(1,2) is an immutable value (a tuple), so it is able to be used as a
dictionary key.
if (1,2) in d
is perfectly valid, and would yield the True value as a result
if (1,2) in d: print d[(1,2)]
also is fine. What specifically happens when you try this?
> This is false, so I expect to have to use d.keys, but I am not quite sure how.
> I will be using this in a loop, and I have to know if there is a key
> in the dictionary called (i,j) and, if there is, I have to grab the
> value at that slot. If not I have to print something else. When I
> tried "in" in the interpreter, I got something about builtin function
> not being iterable. TIA for any suggestions.
>
Sounds like there's more in your code than in your question. If you
give us a more complete picture of what you're doing, we can likely be
more helpful to you.
if i=1 and j=2, then:
if (i,j) in d
would also be true.
More information about the Tutor
mailing list