I am looking for a python module which can take in the name of the city as the input and return the latitude and longitude of the input.
Have a look at geopy. In the "getting started" documentation it shows:
>>> from geopy import geocoders
>>> gn = geocoders.GeoNames()
>>> print gn.geocode("Cleveland, OH 44106")
(u'Cleveland, OH, US', (41.4994954, -81.6954088))
>>> gn.geocode("Cleveland, OH", exactly_one=False)[0]
(u'Cleveland, OH, US', (41.4994954, -81.6954088))