zoukankan      html  css  js  c++  java
  • 天气信息+迭代器

    从网址中抓取城市的天气信息,实现可迭代对象和迭代器对象,从而方便的进行一组城市的天气信息查询

     1 # encoding=utf-8
     2 import requests
     3 # *************************************************************************************
     4 # 实现从网站中抓取天气信息
     5 # def getWeather(city):
     6 #     r = requests.get(u'http://wthrcdn.etouch.cn/weather_mini?city=' + city)
     7 #     data = r.json()['data']['forecast'][0]
     8 #     return '%s:%s,%s' % (city,data['low'],data['high'])
     9 
    10  # print getWeather(u'北京')
    11  # print getWeather(u'沈阳')
    12 # ***************************************************************************************
    13 from collections import Iterable,Iterator
    14 
    15 class WeatherIterator(Iterator):
    16     def __init__(self,cities):
    17         self.cities = cities
    18         self.index = 0
    19     
    20     def getWeather(self,city):
    21         r = requests.get(u'http://wthrcdn.etouch.cn/weather_mini?city=' + city)
    22         data = r.json()['data']['forecast'][0]
    23         return '%s:%s,%s' % (city,data['low'],data['high'])
    24     
    25     def next(self):
    26         if self.index == len(self.cities):
    27             raise StopIteration
    28         city = self.cities[self.index]
    29         self.index += 1
    30         return self.getWeather(city)
    31         
    32 class WeatherIterable(Iterable):
    33     def __init__(self,cities):
    34         self.cities = cities
    35     
    36     def __iter__(self):
    37         return WeatherIterator(self.cities)
    38         
    39         
    40         
    41 for x in WeatherIterable([u'北京',u'上海',u'沈阳',u'郑州']):
    42         print x
  • 相关阅读:
    java 单向链表实现
    super、this
    Java程序员们最常犯的10个错误
    Codeforces-1323D Present
    Codeforces-1323E Instant Noodles
    Codeforces-1312E Array Shrinking
    Codeforces-1327D Infinite Path
    Codeforces-1326D Prefix-Suffix Palindrome
    HDU-5885 XM Reserves
    NTT(快速数论变换)用到的各种素数及原根
  • 原文地址:https://www.cnblogs.com/banshaohuan/p/6919885.html
Copyright © 2011-2022 走看看