实例——查询天气(将数据转化为json格式)

# -*- coding: utf-8 -*-
import requests
import json

import sys
reload(sys)
sys.setdefaultencoding(‘utf8‘)

def get_weather_data():
    city = ‘深圳‘
    url = ‘http://wthrcdn.etouch.cn/weather_mini?city=‘ + city
    text = requests.get(url).text
    weather = json.loads(text)
    if weather[‘desc‘] == ‘OK‘:
        print ‘城市:‘ + weather[‘data‘][‘city‘]
        print ‘温度:‘ + weather[‘data‘][‘wendu‘] + ‘℃‘
        print ‘感冒:‘ + weather[‘data‘][‘ganmao‘]
        print ‘风向:‘ + weather[‘data‘][‘forecast‘][0][‘fengxiang‘]
        print ‘风级:‘ + weather[‘data‘][‘forecast‘][0][‘fengli‘]
        print ‘高温:‘ + weather[‘data‘][‘forecast‘][0][‘high‘]
        print ‘低温:‘ + weather[‘data‘][‘forecast‘][0][‘low‘]
        print ‘天气:‘ + weather[‘data‘][‘forecast‘][0][‘type‘]
        print ‘日期:‘ + weather[‘data‘][‘forecast‘][0][‘date‘]
        print ‘*‘ * 50
        while True:
            key = raw_input(‘是否显示未来四天的天气情况?(Y/N)‘)
            if key == ‘Y‘:
                break
            elif key == ‘N‘:
                exit()
        for i in range(1, 5):
            print ‘日期:‘ + weather[‘data‘][‘forecast‘][i][‘date‘]
            print ‘风向:‘ + weather[‘data‘][‘forecast‘][i][‘fengxiang‘]
            print ‘风级:‘ + weather[‘data‘][‘forecast‘][i][‘fengli‘]
            print ‘高温:‘ + weather[‘data‘][‘forecast‘][i][‘high‘]
            print ‘低温:‘ + weather[‘data‘][‘forecast‘][i][‘low‘]
            print ‘天气:‘ + weather[‘data‘][‘forecast‘][i][‘type‘]
            print(‘-‘ * 50)
    else:
        print ‘您输入的城市有误,或者天气中心未收录您输入的城市。‘

if __name__ == ‘__main__‘:
    get_weather_data()
时间: 2024-10-26 10:19:31

实例——查询天气(将数据转化为json格式)的相关文章

Json数据序列化对象,及对象序列化为Json格式

public class JsonHelper { /// <summary> /// 生成Json格式 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="obj"></param> /// <returns></returns> public static string GetJso

Ext将record中的参数转化为json格式传递

var grid = this.down("conditiongrid"); var store = grid.getStore(); var array = new Array(); for(var i=0;i<store.getCount();i++){ var record = store.getAt(i); if (record.get('useCondition') == true) { array.push({ paraName : record.get('param

将图片数据转化为TFRecord格式与读取

将图片数据转化为TFRecord格式与读取 一.问题情景描述 目录下有一个叫做"Original"的文件夹,文件夹里有十个子文件,分别命名为1,2···一直到10(为了做10轮取平均),这10个子文件夹里还有四个子文件夹,分别命名为"train0","train1","test0","test1".其中含义如其命名所示.这四个子文件夹里一共有若干张JPG格式图像数据.现欲将这份图像数据转化为TFRecord

在java中将各种类型数据转化为json和从json中取数据

首先,导入以下jar包 下面是各种类型转化为json和从json中取出数据的程序 package jsontest; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JsonMain { public

Android数据转化为Json形式给客户端及客户端使用json数据

(1)首先创建生成原始数据的service,VideoNewsServiceBean,这是一个接口的实现类,接口的功能如下: public interface VideoNewsService { /** * 获取最新的视频资讯 * @return */ public List<News> getLastNews(); } News类 public class News { private Integer id; private String title; private Integer ti

form表单序列化为json格式数据

在web开发过程中,经常遇到将form序列化不能格式的字符串提交到后台,下面就介绍怎样将form表单序列化为json字符串. 首先,是扩展的jquery序列化插件,依赖jquery.经测试,这段代码可以放在$(funciton(){})中,也可以放在外面,都可以实现效果. $.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.

如何使用fastJson来解析JSON格式数据和生成JSON格式数据

由于项目用到了JSON格式的数据,在网上搜索到了阿里的fastjson比较好用,特此记录fastjson用法,以备以后查询之用. decode: 首先创建一个JSON解析类: public class JsonParser { private int devid; public int getDevid() { return devid; } public void setDevid(int devid) { this.devid = devid; } } 在需要用到解析的地方创建一个对应的对象

servlet与ajax数据交换(json格式)

JSON数据格式: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等). 这些特性使JSON成为理想的数据交换语言. JSON建构于两种结构: (1)"名称/值"对的集合(A collection of name

数据类型和Json格式

1. 前几天,我才知道有一种简化的数据交换格式,叫做yaml. 我翻了一遍它的文档,看懂的地方不多,但是有一句话令我茅塞顿开. 它说,从结构上看,所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词. 第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(List),比如"北京,上海".