#NEWLINE# def reverse( self , query , exactly_one = True , timeout = None ) : #NEWLINE# #INDENT# '\n        Given a point, find an address.\n\n        :param query: The coordinates for which you wish to obtain the\n            closest human-readable addresses.\n        :type query: :class:`geopy.point.Point`, list or tuple of (latitude,\n            longitude), or string as "%(latitude)s, %(longitude)s"\n\n        :param boolean exactly_one: Return one result or a list of results, if\n            available. Currently this has no effect\n            (only one address is returned by API).\n\n        :param int timeout: Time, in seconds, to wait for the geocoding service\n            to respond before raising a :class:`geopy.exc.GeocoderTimedOut`\n            exception. Set this only if you wish to override, on this call\n            only, the value set during the geocoder\'s initialization.\n\n        ' #NEWLINE# ( lat , lon ) = self . _coerce_point_to_string ( query ) . split ( ',' ) #NEWLINE# params = { #NEWLINE# #INDENT# 'lat' : lat , #NEWLINE# 'lon' : lon , #NEWLINE# #UNINDENT# } #NEWLINE# if ( self . api_key is not None ) : #NEWLINE# #INDENT# params [ 'api_key' ] = self . api_key #NEWLINE# #UNINDENT# url = '?' . join ( ( self . reverse_geocode_api , urlencode ( params ) ) ) #NEWLINE# logger . debug ( '%s.reverse: %s' , self . __class__ . __name__ , url ) #NEWLINE# return self . _parse_json_revgeocode ( self . _call_geocoder ( url , timeout = timeout ) )