0

Google Place API を使用して場所のリストを返しています。結果セットから名前を見つけたいと思います。値のリストを取得していますが、最初の名前だけを取得しようとすると、代わりに最初の文字が表示されます。

name2 = simplejson.dumps([s['name'] for s in result['results']], indent=0)[0]

明らかに、私が欲しいものを手に入れるためのより良い方法がなければなりませんが、私はそれを見つけていません. かなり基本的なものが欠けているようです。以下は関数全体です。

import simplejson, urllib


PLACE_SEARCH = 'https://maps.googleapis.com/maps/api/place/textsearch/json'

def placelatlng(name,city, state,  sensor,**geo_args):
    geo_args.update({
        'name': name,
        'city': city,
        'state': state,       
        'sensor': sensor  
    })  
    concat=name+'+'+city+'+'+state 
    query =  {"query": concat }

    key="MyKey"
    url = PLACE_SEARCH + '?' + urllib.unquote(urllib.urlencode(query))+ '&'  + "sensor="+sensor +'&' + "key="+key
    result = simplejson.load(urllib.urlopen(url))
    name2 = simplejson.dumps([s['name'] for s in result['results']], indent=0)

ありがとう。

4

1 に答える 1

2

dumps() は文字列を返します。[0]その中の最初の文字を取得します。

最初の結果の名前を取得するには:

print result['results'][0]['name']
于 2012-12-30T05:10:58.283 に答える