Iterating over a dictionary in python and stripping white space
In a dictionary comprehension (available in Python >=2.7):
clean_d = { k:v.strip() for k, v in d.iteritems()}
Python 3.X:
clean_d = { k:v.strip() for k, v in d.items()}
Try
for k,v in item.items():
item[k] = v.replace(' ', '')
or in a comprehensive way as suggested by monkut:
newDic = {k,v.replace(' ','') for k,v in item.items()}
What you should note is that lstrip()
returns a copy of the string rather than modify the object. To actually update your dictionary, you'll need to assign the stripped value back to the item.
For example:
for k, v in your_dict.iteritems():
your_dict[k] = v.lstrip()
Note the use of .iteritems()
which returns an iterator instead of a list of key value pairs. This makes it somewhat more efficient.
I should add that in Python3, .item()
has been changed to return "views" and so .iteritems()
would not be required.