[英]Python: Dictionary with list of dictionaries
Im learning python.我正在学习蟒蛇。 The following dictionary contains a list which contains dictionaries of weather data for every 3 hours over the next 5 days.
以下词典包含一个列表,其中包含未来 5 天内每 3 小时的天气数据词典。 furthermore, some of the 3hr subdicts have a list containing a dict within it.
此外,一些 3hr subdicts 有一个列表,其中包含一个 dict。 I worked on a similar problem before where x['value'] for x in list_of_dicts] was able to pull a value in a dict that was in a list.
在 x['value'] for x in list_of_dicts] 能够在列表中的字典中提取值之前,我曾解决过类似的问题。 Here, however, we have a dict with a list with sub list-dicts.
然而,在这里,我们有一个带有子列表字典的列表的字典。 I would like to extract td, temp_max, temp_min, humidity, and description for every 3hr set into their own list.
我想将每 3 小时的 td、temp_max、temp_min、湿度和描述提取到他们自己的列表中。 Anything to put me in the right direction appreciated.
任何让我朝着正确方向前进的东西都值得赞赏。
data = {u'city': {u'name': u'Pittsburgh', u'country': u'US', u'coord': {u'lat': 40.44062, u'lon': -79.995888}, u'sys': {u'population': 0}, u'id': 5206379, u'population': 0}, u'message': 0.0082, u'list': [{u'clouds': {u'all': 0}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-24 03:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'01n', u'description': u'sky is clear'}], u'dt': 1443063600, u'main': {u'temp_kf': 0.01, u'temp': 57.56, u'grnd_level': 995.07, u'temp_max': 57.56, u'sea_level': 1037.72, u'humidity': 77, u'pressure': 995.07, u'temp_min': 57.55}, u'wind': {u'speed': 3.97, u'deg': 68.5021}}, {u'clouds': {u'all': 0}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-24 06:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'01n', u'description': u'sky is clear'}], u'dt': 1443074400, u'main': {u'temp_kf': 0.01, u'temp': 52.43, u'grnd_level': 994.95, u'temp_max': 52.43, u'sea_level': 1037.71, u'humidity': 84, u'pressure': 994.95, u'temp_min': 52.41}, u'wind': {u'speed': 2.89, u'deg': 83.0009}}, {u'clouds': {u'all': 0}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-24 09:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'01n', u'description': u'sky is clear'}], u'dt': 1443085200, u'main': {u'temp_kf': 0.01, u'temp': 50.2, u'grnd_level': 995.4, u'temp_max': 50.2, u'sea_level': 1038.45, u'humidity': 85, u'pressure': 995.4, u'temp_min': 50.18}, u'wind': {u'speed': 3.59, u'deg': 69.5009}}, {u'clouds': {u'all': 0}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-24 12:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'01d', u'description': u'sky is clear'}], u'dt': 1443096000, u'main': {u'temp_kf': 0, u'temp': 51.19, u'grnd_level': 996.73, u'temp_max': 51.19, u'sea_level': 1039.68, u'humidity': 84, u'pressure': 996.73, u'temp_min': 51.18}, u'wind': {u'speed': 4.58, u'deg': 53.5024}}, {u'clouds': {u'all': 0}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-24 15:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'01d', u'description': u'sky is clear'}], u'dt': 1443106800, u'main': {u'temp_kf': 0, u'temp': 69.3, u'grnd_level': 997.12, u'temp_max': 69.3, u'sea_level': 1039.7, u'humidity': 57, u'pressure': 997.12, u'temp_min': 69.28}, u'wind': {u'speed': 3.48, u'deg': 62.5043}}, {u'clouds': {u'all': 0}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-24 18:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'01d', u'description': u'sky is clear'}], u'dt': 1443117600, u'main': {u'temp_kf': 0, u'temp': 74.53, u'grnd_level': 995.97, u'temp_max': 74.53, u'sea_level': 1038.33, u'humidity': 48, u'pressure': 995.97, u'temp_min': 74.52}, u'wind': {u'speed': 4.8, u'deg': 83.0021}}, {u'clouds': {u'all': 8}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-24 21:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'02d', u'description': u'sky is clear'}], u'dt': 1443128400, u'main': {u'temp_kf': 0, u'temp': 74.5, u'grnd_level': 995.36, u'temp_max': 74.5, u'sea_level': 1037.64, u'humidity': 44, u'pressure': 995.36, u'temp_min': 74.49}, u'wind': {u'speed': 5.64, u'deg': 94.5118}}, {u'clouds': {u'all': 12}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-25 00:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02n', u'description': u'few clouds'}], u'dt': 1443139200, u'main': {u'temp_kf': 0, u'temp': 65.32, u'grnd_level': 995.78, u'temp_max': 65.32, u'sea_level': 1038.44, u'humidity': 54, u'pressure': 995.78, u'temp_min': 65.31}, u'wind': {u'speed': 4.56, u'deg': 101.501}}, {u'clouds': {u'all': 20}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-25 03:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02n', u'description': u'few clouds'}], u'dt': 1443150000, u'main': {u'temp_kf': 0, u'temp': 58.33, u'grnd_level': 996.43, u'temp_max': 58.33, u'sea_level': 1039.17, u'humidity': 70, u'pressure': 996.43, u'temp_min': 58.33}, u'wind': {u'speed': 3.56, u'deg': 89.0032}}, {u'clouds': {u'all': 12}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-25 06:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02n', u'description': u'few clouds'}], u'dt': 1443160800, u'main': {u'temp_kf': 0, u'temp': 54.54, u'grnd_level': 996.37, u'temp_max': 54.54, u'sea_level': 1039.04, u'humidity': 83, u'pressure': 996.37, u'temp_min': 54.54}, u'wind': {u'speed': 3.07, u'deg': 87.5011}}, {u'clouds': {u'all': 8}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-25 09:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'02n', u'description': u'sky is clear'}], u'dt': 1443171600, u'main': {u'temp_kf': 0, u'temp': 53.06, u'grnd_level': 996.15, u'temp_max': 53.06, u'sea_level': 1039.05, u'humidity': 85, u'pressure': 996.15, u'temp_min': 53.05}, u'wind': {u'speed': 4.23, u'deg': 105.503}}, {u'clouds': {u'all': 12}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-25 12:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02d', u'description': u'few clouds'}], u'dt': 1443182400, u'main': {u'temp_kf': 0, u'temp': 54.07, u'grnd_level': 996.75, u'temp_max': 54.07, u'sea_level': 1039.58, u'humidity': 90, u'pressure': 996.75, u'temp_min': 54.06}, u'wind': {u'speed': 4.77, u'deg': 77.0009}}, {u'clouds': {u'all': 20}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-25 15:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02d', u'description': u'few clouds'}], u'dt': 1443193200, u'main': {u'temp_kf': 0, u'temp': 68.11, u'grnd_level': 996.19, u'temp_max': 68.11, u'sea_level': 1038.76, u'humidity': 66, u'pressure': 996.19, u'temp_min': 68.11}, u'wind': {u'speed': 5.53, u'deg': 100.001}}, {u'clouds': {u'all': 12}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-25 18:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02d', u'description': u'few clouds'}], u'dt': 1443204000, u'main': {u'temp_kf': 0, u'temp': 72.9, u'grnd_level': 994.79, u'temp_max': 72.9, u'sea_level': 1037.27, u'humidity': 55, u'pressure': 994.79, u'temp_min': 72.9}, u'wind': {u'speed': 6.18, u'deg': 108.001}}, {u'clouds': {u'all': 12}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-25 21:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02d', u'description': u'few clouds'}], u'dt': 1443214800, u'main': {u'temp_kf': 0, u'temp': 72.32, u'grnd_level': 993.78, u'temp_max': 72.32, u'sea_level': 1036.15, u'humidity': 55, u'pressure': 993.78, u'temp_min': 72.32}, u'wind': {u'speed': 5.7, u'deg': 107.502}}, {u'clouds': {u'all': 32}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-26 00:00:00', u'weather': [{u'main': u'Clouds', u'id': 802, u'icon': u'03n', u'description': u'scattered clouds'}], u'dt': 1443225600, u'main': {u'temp_kf': 0, u'temp': 65.59, u'grnd_level': 993.76, u'temp_max': 65.59, u'sea_level': 1036.27, u'humidity': 64, u'pressure': 993.76, u'temp_min': 65.58}, u'wind': {u'speed': 4.54, u'deg': 110.503}}, {u'clouds': {u'all': 68}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-26 03:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443236400, u'main': {u'temp_kf': 0, u'temp': 61.14, u'grnd_level': 994.18, u'temp_max': 61.14, u'sea_level': 1036.73, u'humidity': 77, u'pressure': 994.18, u'temp_min': 61.13}, u'wind': {u'speed': 3.8, u'deg': 108.003}}, {u'clouds': {u'all': 56}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-26 06:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443247200, u'main': {u'temp_kf': 0, u'temp': 58.05, u'grnd_level': 993.88, u'temp_max': 58.05, u'sea_level': 1036.54, u'humidity': 86, u'pressure': 993.88, u'temp_min': 58.04}, u'wind': {u'speed': 3.48, u'deg': 89.5007}}, {u'clouds': {u'all': 76}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-26 09:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443258000, u'main': {u'temp_kf': 0, u'temp': 55.83, u'grnd_level': 993.2, u'temp_max': 55.84, u'sea_level': 1036.06, u'humidity': 85, u'pressure': 993.2, u'temp_min': 55.83}, u'wind': {u'speed': 3.61, u'deg': 61.0033}}, {u'clouds': {u'all': 64}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-26 12:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04d', u'description': u'broken clouds'}], u'dt': 1443268800, u'main': {u'temp_kf': 0, u'temp': 56.47, u'grnd_level': 993.43, u'temp_max': 56.47, u'sea_level': 1036.37, u'humidity': 75, u'pressure': 993.43, u'temp_min': 56.47}, u'wind': {u'speed': 3.8, u'deg': 61.5007}}, {u'clouds': {u'all': 76}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-26 15:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04d', u'description': u'broken clouds'}], u'dt': 1443279600, u'main': {u'temp_kf': 0, u'temp': 66.61, u'grnd_level': 994.08, u'temp_max': 66.61, u'sea_level': 1036.47, u'humidity': 58, u'pressure': 994.08, u'temp_min': 66.61}, u'wind': {u'speed': 3.37, u'deg': 75.5045}}, {u'clouds': {u'all': 88}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-26 18:00:00', u'weather': [{u'main': u'Clouds', u'id': 804, u'icon': u'04d', u'description': u'overcast clouds'}], u'dt': 1443290400, u'main': {u'temp_kf': 0, u'temp': 70.97, u'grnd_level': 993.41, u'temp_max': 70.97, u'sea_level': 1035.74, u'humidity': 51, u'pressure': 993.41, u'temp_min': 70.97}, u'wind': {u'speed': 5.85, u'deg': 94.0009}}, {u'clouds': {u'all': 76}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-26 21:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04d', u'description': u'broken clouds'}], u'dt': 1443301200, u'main': {u'temp_kf': 0, u'temp': 70.59, u'grnd_level': 992.53, u'temp_max': 70.59, u'sea_level': 1034.87, u'humidity': 51, u'pressure': 992.53, u'temp_min': 70.59}, u'wind': {u'speed': 4.88, u'deg': 108.502}}, {u'clouds': {u'all': 76}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-27 00:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443312000, u'main': {u'temp_kf': 0, u'temp': 65.28, u'grnd_level': 992.51, u'temp_max': 65.28, u'sea_level': 1034.9, u'humidity': 58, u'pressure': 992.51, u'temp_min': 65.28}, u'wind': {u'speed': 4.56, u'deg': 108.001}}, {u'clouds': {u'all': 48}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-27 03:00:00', u'weather': [{u'main': u'Clouds', u'id': 802, u'icon': u'03n', u'description': u'scattered clouds'}], u'dt': 1443322800, u'main': {u'temp_kf': 0, u'temp': 62.27, u'grnd_level': 992.82, u'temp_max': 62.27, u'sea_level': 1035.35, u'humidity': 64, u'pressure': 992.82, u'temp_min': 62.27}, u'wind': {u'speed': 4.99, u'deg': 112.5}}, {u'clouds': {u'all': 64}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-27 06:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443333600, u'main': {u'temp_kf': 0, u'temp': 61.98, u'grnd_level': 992.35, u'temp_max': 61.98, u'sea_level': 1034.97, u'humidity': 67, u'pressure': 992.35, u'temp_min': 61.98}, u'wind': {u'speed': 5.44, u'deg': 121.001}}, {u'clouds': {u'all': 92}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-27 09:00:00', u'weather': [{u'main': u'Clouds', u'id': 804, u'icon': u'04n', u'description': u'overcast clouds'}], u'dt': 1443344400, u'main': {u'temp_kf': 0, u'temp': 63.28, u'grnd_level': 992.33, u'temp_max': 63.28, u'sea_level': 1034.99, u'humidity': 73, u'pressure': 992.33, u'temp_min': 63.28}, u'wind': {u'speed': 5.4, u'deg': 125.503}}, {u'clouds': {u'all': 24}, u'rain': {u'3h': 0.02}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-27 12:00:00', u'weather': [{u'main': u'Rain', u'id': 500, u'icon': u'10d', u'description': u'light rain'}], u'dt': 1443355200, u'main': {u'temp_kf': 0, u'temp': 61.87, u'grnd_level': 992.7, u'temp_max': 61.87, u'sea_level': 1035.4, u'humidity': 71, u'pressure': 992.7, u'temp_min': 61.87}, u'wind': {u'speed': 6.39, u'deg': 117.002}}, {u'clouds': {u'all': 8}, u'rain': {}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-27 15:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'02d', u'description': u'sky is clear'}], u'dt': 1443366000, u'main': {u'temp_kf': 0, u'temp': 67.05, u'grnd_level': 992.61, u'temp_max': 67.05, u'sea_level': 1035.13, u'humidity': 62, u'pressure': 992.61, u'temp_min': 67.05}, u'wind': {u'speed': 7.34, u'deg': 123.5}}, {u'clouds': {u'all': 8}, u'rain': {}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-27 18:00:00', u'weather': [{u'main': u'Clear', u'id': 800, u'icon': u'02d', u'description': u'sky is clear'}], u'dt': 1443376800, u'main': {u'temp_kf': 0, u'temp': 71.23, u'grnd_level': 990.89, u'temp_max': 71.23, u'sea_level': 1033.19, u'humidity': 58, u'pressure': 990.89, u'temp_min': 71.23}, u'wind': {u'speed': 7.58, u'deg': 130.501}}, {u'clouds': {u'all': 76}, u'rain': {}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-27 21:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04d', u'description': u'broken clouds'}], u'dt': 1443387600, u'main': {u'temp_kf': 0, u'temp': 70.29, u'grnd_level': 989.6, u'temp_max': 70.29, u'sea_level': 1031.57, u'humidity': 58, u'pressure': 989.6, u'temp_min': 70.29}, u'wind': {u'speed': 6.72, u'deg': 135.502}}, {u'clouds': {u'all': 56}, u'rain': {}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-28 00:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443398400, u'main': {u'temp_kf': 0, u'temp': 66.64, u'grnd_level': 989.15, u'temp_max': 66.64, u'sea_level': 1031.36, u'humidity': 61, u'pressure': 989.15, u'temp_min': 66.64}, u'wind': {u'speed': 5.64, u'deg': 124}}, {u'clouds': {u'all': 12}, u'rain': {}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-28 03:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02n', u'description': u'few clouds'}], u'dt': 1443409200, u'main': {u'temp_kf': 0, u'temp': 63.5, u'grnd_level': 989.04, u'temp_max': 63.5, u'sea_level': 1031.28, u'humidity': 73, u'pressure': 989.04, u'temp_min': 63.5}, u'wind': {u'speed': 4.04, u'deg': 122.001}}, {u'clouds': {u'all': 64}, u'rain': {}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-28 06:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443420000, u'main': {u'temp_kf': 0, u'temp': 61.08, u'grnd_level': 988.07, u'temp_max': 61.08, u'sea_level': 1030.23, u'humidity': 84, u'pressure': 988.07, u'temp_min': 61.08}, u'wind': {u'speed': 2.61, u'deg': 113.002}}, {u'clouds': {u'all': 44}, u'rain': {}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-28 09:00:00', u'weather': [{u'main': u'Clouds', u'id': 802, u'icon': u'03n', u'description': u'scattered clouds'}], u'dt': 1443430800, u'main': {u'temp_kf': 0, u'temp': 59.5, u'grnd_level': 986.83, u'temp_max': 59.5, u'sea_level': 1029.11, u'humidity': 91, u'pressure': 986.83, u'temp_min': 59.5}, u'wind': {u'speed': 2.27, u'deg': 56.5018}}, {u'clouds': {u'all': 80}, u'rain': {u'3h': 0.3}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-28 12:00:00', u'weather': [{u'main': u'Rain', u'id': 500, u'icon': u'10d', u'description': u'light rain'}], u'dt': 1443441600, u'main': {u'temp_kf': 0, u'temp': 60.91, u'grnd_level': 987.38, u'temp_max': 60.91, u'sea_level': 1029.65, u'humidity': 91, u'pressure': 987.38, u'temp_min': 60.91}, u'wind': {u'speed': 2.72, u'deg': 69.5012}}, {u'clouds': {u'all': 68}, u'rain': {u'3h': 0.105}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-28 15:00:00', u'weather': [{u'main': u'Rain', u'id': 500, u'icon': u'10d', u'description': u'light rain'}], u'dt': 1443452400, u'main': {u'temp_kf': 0, u'temp': 65.99, u'grnd_level': 987.52, u'temp_max': 65.99, u'sea_level': 1029.39, u'humidity': 82, u'pressure': 987.52, u'temp_min': 65.99}, u'wind': {u'speed': 2.51, u'deg': 134}}, {u'clouds': {u'all': 64}, u'rain': {}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-28 18:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04d', u'description': u'broken clouds'}], u'dt': 1443463200, u'main': {u'temp_kf': 0, u'temp': 73.27, u'grnd_level': 986.01, u'temp_max': 73.27, u'sea_level': 1027.85, u'humidity': 67, u'pressure': 986.01, u'temp_min': 73.27}, u'wind': {u'speed': 3.26, u'deg': 317}}, {u'clouds': {u'all': 24}, u'rain': {}, u'sys': {u'pod': u'd'}, u'dt_txt': u'2015-09-28 21:00:00', u'weather': [{u'main': u'Clouds', u'id': 801, u'icon': u'02d', u'description': u'few clouds'}], u'dt': 1443474000, u'main': {u'temp_kf': 0, u'temp': 74.91, u'grnd_level': 984.9, u'temp_max': 74.91, u'sea_level': 1026.68, u'humidity': 63, u'pressure': 984.9, u'temp_min': 74.91}, u'wind': {u'speed': 3.02, u'deg': 297.003}}, {u'clouds': {u'all': 56}, u'rain': {}, u'sys': {u'pod': u'n'}, u'dt_txt': u'2015-09-29 00:00:00', u'weather': [{u'main': u'Clouds', u'id': 803, u'icon': u'04n', u'description': u'broken clouds'}], u'dt': 1443484800, u'main': {u'temp_kf': 0, u'temp': 69.44, u'grnd_level': 985.46, u'temp_max': 69.44, u'sea_level': 1027.29, u'humidity': 73, u'pressure': 985.46, u'temp_min': 69.44}, u'wind': {u'speed': 2.27, u'deg': 234.002}}], u'cod': u'200', u'cnt': 40}
I formatted the data so it was easier to read and took a subset because of the Stackoverflow question size limit.由于 Stackoverflow 问题的大小限制,我对数据进行了格式化,以便更容易阅读并获取子集。 But you should be able to get the gist of it.
但是你应该能够得到它的要点。 There is an example loop printing the values you want, so all your have to do is store it in what ever data structure you want.
有一个示例循环打印您想要的值,因此您所要做的就是将其存储在您想要的任何数据结构中。
#!/usr/bin/python
data = {
u'city': {
u'name': u'Pittsburgh',
u'country': u'US',
u'coord': {u'lat': 40.44062, u'lon': -79.995888},
u'sys': {u'population': 0},
u'id': 5206379,
u'population': 0,
},
u'message': 0.0082,
u'list': [
{
u'clouds': {u'all': 0},
u'sys': {u'pod': u'n'},
u'dt_txt': u'2015-09-24 03:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'01n',
u'description': u'sky is clear',
}],
u'dt': 1443063600,
u'main': {
u'temp_kf': 0.01,
u'temp': 57.56,
u'grnd_level': 995.07,
u'temp_max': 57.56,
u'sea_level': 1037.72,
u'humidity': 77,
u'pressure': 995.07,
u'temp_min': 57.55,
},
u'wind': {u'speed': 3.97, u'deg': 68.5021},
},
{
u'clouds': {u'all': 0},
u'sys': {u'pod': u'n'},
u'dt_txt': u'2015-09-24 06:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'01n',
u'description': u'sky is clear',
}],
u'dt': 1443074400,
u'main': {
u'temp_kf': 0.01,
u'temp': 52.43,
u'grnd_level': 994.95,
u'temp_max': 52.43,
u'sea_level': 1037.71,
u'humidity': 84,
u'pressure': 994.95,
u'temp_min': 52.41,
},
u'wind': {u'speed': 2.89, u'deg': 83.0009},
},
{
u'clouds': {u'all': 0},
u'sys': {u'pod': u'n'},
u'dt_txt': u'2015-09-24 09:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'01n',
u'description': u'sky is clear',
}],
u'dt': 1443085200,
u'main': {
u'temp_kf': 0.01,
u'temp': 50.2,
u'grnd_level': 995.4,
u'temp_max': 50.2,
u'sea_level': 1038.45,
u'humidity': 85,
u'pressure': 995.4,
u'temp_min': 50.18,
},
u'wind': {u'speed': 3.59, u'deg': 69.5009},
},
{
u'clouds': {u'all': 0},
u'sys': {u'pod': u'd'},
u'dt_txt': u'2015-09-24 12:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'01d',
u'description': u'sky is clear',
}],
u'dt': 1443096000,
u'main': {
u'temp_kf': 0,
u'temp': 51.19,
u'grnd_level': 996.73,
u'temp_max': 51.19,
u'sea_level': 1039.68,
u'humidity': 84,
u'pressure': 996.73,
u'temp_min': 51.18,
},
u'wind': {u'speed': 4.58, u'deg': 53.5024},
},
{
u'clouds': {u'all': 0},
u'sys': {u'pod': u'd'},
u'dt_txt': u'2015-09-24 15:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'01d',
u'description': u'sky is clear',
}],
u'dt': 1443106800,
u'main': {
u'temp_kf': 0,
u'temp': 69.3,
u'grnd_level': 997.12,
u'temp_max': 69.3,
u'sea_level': 1039.7,
u'humidity': 57,
u'pressure': 997.12,
u'temp_min': 69.28,
},
u'wind': {u'speed': 3.48, u'deg': 62.5043},
},
{
u'clouds': {u'all': 0},
u'sys': {u'pod': u'd'},
u'dt_txt': u'2015-09-24 18:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'01d',
u'description': u'sky is clear',
}],
u'dt': 1443117600,
u'main': {
u'temp_kf': 0,
u'temp': 74.53,
u'grnd_level': 995.97,
u'temp_max': 74.53,
u'sea_level': 1038.33,
u'humidity': 48,
u'pressure': 995.97,
u'temp_min': 74.52,
},
u'wind': {u'speed': 4.8, u'deg': 83.0021},
},
{
u'clouds': {u'all': 8},
u'sys': {u'pod': u'd'},
u'dt_txt': u'2015-09-24 21:00:00',
u'weather': [{
u'main': u'Clear',
u'id': 800,
u'icon': u'02d',
u'description': u'sky is clear',
}],
u'dt': 1443128400,
u'main': {
u'temp_kf': 0,
u'temp': 74.5,
u'grnd_level': 995.36,
u'temp_max': 74.5,
u'sea_level': 1037.64,
u'humidity': 44,
u'pressure': 995.36,
u'temp_min': 74.49,
},
u'wind': {u'speed': 5.64, u'deg': 94.5118},
},
{
u'clouds': {u'all': 12},
u'sys': {u'pod': u'n'},
u'dt_txt': u'2015-09-25 00:00:00',
u'weather': [{
u'main': u'Clouds',
u'id': 801,
u'icon': u'02n',
u'description': u'few clouds',
}],
u'dt': 1443139200,
u'main': {
u'temp_kf': 0,
u'temp': 65.32,
u'grnd_level': 995.78,
u'temp_max': 65.32,
u'sea_level': 1038.44,
u'humidity': 54,
u'pressure': 995.78,
u'temp_min': 65.31,
},
u'wind': {u'speed': 4.56, u'deg': 101.501},
},
{
u'clouds': {u'all': 20},
u'sys': {u'pod': u'n'},
u'dt_txt': u'2015-09-25 03:00:00',
u'weather': [{
u'main': u'Clouds',
u'id': 801,
u'icon': u'02n',
u'description': u'few clouds',
}],
u'dt': 1443150000,
u'main': {
u'temp_kf': 0,
u'temp': 58.33,
u'grnd_level': 996.43,
u'temp_max': 58.33,
u'sea_level': 1039.17,
u'humidity': 70,
u'pressure': 996.43,
u'temp_min': 58.33,
},
u'wind': {u'speed': 3.56, u'deg': 89.0032},
}
],
u'cod': u'200',
u'cnt': 40,
}
for d in data['list']:
# print d['dt_txt']
print "Temp max = %s " % d['main']['temp_max']
print "Temp min = %s " % d['main']['temp_min']
print "Humidity = %s " % d['main']['humidity']
print "Weather = %s " % d['weather'][0]['description']
print "-------"
This worked for me.这对我有用。 the arg in the first function is data = {json...} above.
第一个函数中的 arg 是上面的 data = {json...}。 Thanks inic for pointing me in the right direction.
感谢 inic 为我指明了正确的方向。 i'm still pretty new to python.
我对python还是很陌生。
def weather_forecast(arg):
dt_list = []
temp_list = []
humidity_list = []
description_list = []
for d in arg['list']:
dt_list.append(d['dt'])
temp_list.append(d['main']['temp'])
humidity_list.append(d['main']['humidity'])
description_list.append(d['weather'][0]['description'])
date = dt_time(dt_list)
temp = tempF(temp_list)
humidity = humidity_percent(humidity_list)
description = desc_func(description_list)
mdict = OrderedDict((z[0],list(z[1:])) for z in zip(date, temp, description))
for k,v in mdict.items():
print("{}: {}".format(k,v))
def dt_time(arg):
date = []
for item in arg:
x = datetime.datetime.strptime(time.ctime(item), "%a %b %d %H:%M:%S %Y")
y = str(x)
date.append(y)
return date
def tempF(arg):
temp = []
for item in arg:
t = "%s F" % item
temp.append(t)
return temp
def humidity_percent(arg):
humidity = []
for item in arg:
h = "%s%%" % item
humidity.append(h)
return humidity
def desc_func(arg):
desc = []
for item in arg:
desc.append(item.encode("utf-8"))
return desc
If you data is purely composed with directories and arrays, then it should be in json format.如果你的数据纯粹是由目录和数组组成,那么它应该是 json 格式。
import json
json.loads(data)
should work.应该管用。 I tried, but seems like there's some problem with your data... when you get your data right, processing your data in json way helps a lot.
我试过了,但似乎你的数据有问题……当你得到正确的数据时,以 json 方式处理你的数据会有很大帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.