I'm trying to loop over elements of an input string, and get them from a dictionary. What am I doing wrong?
number_map = { 1: -3, 2: -2, 3: -1, 4: 1, 5: 2, 6: 3 } input_str = raw_input("Enter something: ") strikes = [number_map(int(x)) for x in input_str.split()]
strikes = [number_map(int(x)) for x in input_str.split()] TypeError: 'dict' object is not callable
The syntax for accessing a dict given a key is number_map[int(x)]
. number_map(int(x))
would actually be a function call but since number_map
is not a callable, an exception is raised.
Access the dictionary with square brackets.
strikes = [number_map[int(x)] for x in input_str.split()]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With