Print the first in a Python "subdict" -
i running script (python2.7) collects data husqvarna automower store bit of information in variable printout, seems information in subdict (dont know if thats correct term)
if run in scriptpp.pprint(mow.status())
i this
{ u'batterypercent': 99, u'cachedsettingsuuid': u'59a88728-804a-47b6-824c-d2b093bd980e', u'connected': false, u'lasterrorcode': 0, u'lasterrorcodetimestamp': 0, u'lastlocations': [ { u'gpsstatus': u'using_gps_map', u'latitude': 57.57352, u'longitude': 12.047441666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573521666666664, u'longitude': 12.047431666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573535, u'longitude': 12.047445}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57356333333333, u'longitude': 12.047563333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573573333333336, u'longitude': 12.047613333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57349, u'longitude': 12.047508333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573485, u'longitude': 12.047495}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57347166666667, u'longitude': 12.047833333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57348833333333, u'longitude': 12.047818333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573526666666666, u'longitude': 12.047773333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573526666666666, u'longitude': 12.047771666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57357666666667, u'longitude': 12.047841666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57354333333333, u'longitude': 12.047875}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57358333333333, u'longitude': 12.047835}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57357666666667, u'longitude': 12.047818333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573635, u'longitude': 12.047693333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57364666666667, u'longitude': 12.04762}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57359, u'longitude': 12.04724}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57359, u'longitude': 12.047235}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57350666666667, u'longitude': 12.047486666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.5735, u'longitude': 12.047553333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57351666666667, u'longitude': 12.047533333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57351666666667, u'longitude': 12.04756}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57353333333333, u'longitude': 12.047541666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57353, u'longitude': 12.047571666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57346, u'longitude': 12.047595}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57346, u'longitude': 12.04761}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573431666666664, u'longitude': 12.04773}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573435, u'longitude': 12.047711666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57346833333333, u'longitude': 12.047578333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573495, u'longitude': 12.047641666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57349333333333, u'longitude': 12.04764}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57347333333333, u'longitude': 12.047643333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57346833333333, u'longitude': 12.04771}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573478333333334, u'longitude': 12.047773333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57325, u'longitude': 12.047635}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57324833333333, u'longitude': 12.047635}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57324166666667, u'longitude': 12.047633333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57324166666667, u'longitude': 12.047631666666666}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573285, u'longitude': 12.047618333333334}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573301666666666, u'longitude': 12.047596666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573303333333335, u'longitude': 12.047595}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57331166666667, u'longitude': 12.047561666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573315, u'longitude': 12.047555}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57331666666666, u'longitude': 12.047555}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57333833333333, u'longitude': 12.047551666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.57342166666667, u'longitude': 12.047566666666667}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573365, u'longitude': 12.047553333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573366666666665, u'longitude': 12.047553333333333}, { u'gpsstatus': u'using_gps_map', u'latitude': 57.573346666666666, u'longitude': 12.047558333333333}], u'mowerstatus': u'off_disabled', u'nextstartsource': u'week_timer', u'nextstarttimestamp': 1491782400, u'operatingmode': u'auto', u'showasdisconnected': false, u'storedtimestamp': 1491435026887l, u'valuefound': true} i can example batterypercent using
dic_info = mow.status() battery = dic_info.get('batterypercent') print battery but how longitude , latitude in similary way, need first one?
thanx martin
you have access lastlocations, contains list of dicts. when there, access element in position [0] , use ['latitude'] or ['longitude'] specific values.
d = dict(mow.status()) >>> print(d['lastlocations'][0]) {'latitude': 57.57352, 'gpsstatus': 'using_gps_map', 'longitude': 12.047441666666666} >>> print(d['lastlocations'][0]['latitude']) 57.57352 >>> print(d['lastlocations'][0]['longitude']) 12.047441666666666 you can change index @ print(d['lastlocations'][0] [1] or [2] access second , third element of list, example.
{u'gpsstatus': u'using_gps_map', u'latitude': 57.573521666666664, u'longitude': 12.047431666666666}{u'gpsstatus': u'using_gps_map', u'latitude': 57.573535, u'longitude': 12.047445}
p.s.: can use print(len(d['lastlocations'])) number of elements inside lastlocations list.
>>> print(len(d['lastlocations'])) 50 so know can't use index bigger 49, or in other words, 50 - 1.
Comments
Post a Comment