Google Map API Web サイトでこのコードを見ていました。
import simplejson, urllib
GEOCODE_BASE_URL = 'http://maps.googleapis.com/maps/api/geocode/json'
def geocode(address,sensor, **geo_args):
geo_args.update({
'address': address,
'sensor': sensor
})
url = GEOCODE_BASE_URL + '?' + urllib.urlencode(geo_args)
result = simplejson.load(urllib.urlopen(url))
print simplejson.dumps([s['formatted_address'] for s in result['results']], indent=2)
if __name__ == '__main__':
geocode(address="San+Francisco",sensor="false")
ジオコード関数では、関数を実際に適用するときに、関数を呼び出すときに geo_args 辞書を使用しないことに気付きましたが、代わりにそれを使用して、次の行で更新する辞書を初期化します。関数自体の中で辞書を初期化するのではなく、これを使用する利点は何ですか? コードが少しわかりにくくなるので、それを行う理由があると思います。