0

I'm kind of new to python and need some help. I was planning on having some sort of a hashMap-kind-of data structure to map a string to its length. How do I do this in python?

Adway Dhillon
  • 77
  • 1
  • 4
  • 16
  • 2
    https://docs.python.org/2/tutorial/datastructures.html#dictionaries. There's not much point here, though, as `len(s)` is `O(1)` - see http://stackoverflow.com/q/1115313/3001761 – jonrsharpe Mar 17 '15 at 16:40
  • possible duplicate of [Add to a dictionary in Python?](http://stackoverflow.com/questions/1024847/add-to-a-dictionary-in-python) – motoku Mar 17 '15 at 16:45
  • Important question is to ask why you want to do this, you might be running into a classic XY problem here... http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem – shuttle87 Mar 17 '15 at 16:49

1 Answers1

3

Use an empty dictionary, like so:

string_lengths = {}

string = 'hello'

string_lengths[string] = len(string)

print string_lengths

Output:

{'hello': 5}

Or do this for a list of strings:

string_lengths = {}

strings = ['Hello', 'There', 'Human Being']

for x in strings:
    string_lengths[x] = len(x)

print string_lengths

Output:

{'Human Being': 11, 'There': 5, 'Hello': 5}

Note that Dictionaries are unordered lists of key, value pairs.

To Reference the items in a dictionary:

string_lengths['Hello'] returns 5

MikeVaughan
  • 1,441
  • 1
  • 11
  • 18