The problem is the exactly_one
argument to g.geocode
. When I run this in the shell I get:
>>> g.geocode('6943, Australia', exactly_one=False)
[(u'Australia 6943, Villafontana, Tijuana Municipality, Baja California, Mexico',
(32.4988788, -116.8620506)),
(u'Australia 6943, Castelar, Buenos Aires Province, Argentina',
(-34.7036339, -58.6423071)),
(u'Australia 6943, Rosario, Santa Fe Province, Argentina',
(-32.9913482, -60.6398934)),
(u'Australia, Lebanon', (33.8879118, 35.4749439)),
(u'Australia, Juliaca, Peru', (-15.4897806, -70.146677)),
(u'Australia, Lima District 15007, Peru', (-12.0397296, -76.9944836)),
(u'Australia, Manila, Philippines', (14.48538, 121.0394822)),
(u'Australia, Conchal\xed, Santiago Metropolitan Region, Chile',
(-33.3929606, -70.6780826)),
(u'Australia, Chiguayante, Biob\xedo Region, Chile',
(-36.9556346, -73.0145556)),
(u'Australia, Copiap\xf3, Atacama Region, Chile', (-27.3978776, -70.2934656))]
Now, you're trying to break up that big list into just place, (lat, lng)
, when it's actually a list of those; there are too many values
in that list to unpack
into just the two (place
and (lat, lng)
), since there are actually 10. You could do something like
for place, (lat, lng) in g.geocode(a, exactly_one=False):
print place, lat, lng
or do some other kind of list manipulation or whatever.