On 27 Nov, 13:52, jujulj <juj...@gmail.com> wrote: > Hi, > > I get the data shown below from the json geonames web service. > What's the best way to get the name value of the alternateNames with a > given lang value? > Do I have to loop in the array to find it? > > thanks > > {u'adminCode1': u'09', > u'adminName1': u'The Federal District', > u'adminName2': u'', > u'adminName3': u'', > u'adminName4': u'', > u'alternateNames': [{u'lang': u'ko', u'name': u'\uba55\uc2dc\ucf54 \uc2dc'}, > {u'lang': u'ja', > u'name': u'\u30e1\u30ad\u30b7\u30b3\u30b7\u30c6\u30a3'}, > {u'lang': u'th', > u'name': > u'\u0e40\u0e21\u0e47\u0e01\u0e0b\u0e34\u0e42\u0e01\u0e0b\u0e34\u0e15\u0e35'}, > {u'lang': u'gl', u'name': u'Cidade de M\xe9xico'}, > {u'lang': u'pt', u'name': u'Cidade do M\xe9xico'}, > {u'lang': u'scn', u'name': u'Cit\xe0 d\xfb Messicu'}, > {u'lang': u'scn', u'name': u'Cit\xe0 d\xfb M\xe8ssicu'}, > ...........................
A simple list comprehension should do the trick: [el['name'] for el in json_data['alternateName'] if el['lang'] == '??'] Jon. -- http://mail.python.org/mailman/listinfo/python-list