Python字符串和字典解析

时间:2012-02-21 03:28:02

标签: android python

我使用SL4A API中的readLocation()方法获得此输出。这是结果。我怎样才能解析这个,所以我只得到海拔,经度和纬度?

    Result(id=2, result={u'network': {u'altitude': 0, u'p
    rovider': u'network', u'longitude': -97.6591116000000
    03, u'time': 1329794430482L, u'latitude': 30.44257223
    3333333, u'speed': 0, u'accuracy': 51}}, error=None)

我尝试使用此代码:

   import android, string, time

   droid = android.Android()
   droid.startLocating()
   time.sleep(5)

   res = droid.readLocation()

   print res.result[u'latitude']

它返回:        KeyError:u'latitude'

3 个答案:

答案 0 :(得分:1)

Assuming res is the name bound to that objectres.result[u'network'][u'altitude']会让你达到高度。适当修改其他键。

答案 1 :(得分:1)

由于res.result显然由嵌套的dicts组成,res.result[u'network'][u'latitude']应该可以解决问题。

答案 2 :(得分:1)

尝试

res.result[u'network'][u'latitude']

因为网络充当包含海拔,经度和字典的字典的关键字。纬度

u'network' : { u'altitude': 0, u'provider': u'network',u'longitude': -97.6591116000000    03, u'time': 1329794430482L, u'latitude': 30.442572233333333, u'speed': 0, u'accuracy': 51}