我没弄明白使用迭代器好在哪里了
来源:3-2 如何实现可迭代对象和迭代器对象(2)

ShiveryMoon
2017-06-02
老师的代码的核心机制就在于next函数的迭代调用,那我用for直接调用城市列表不就好了吗。。
我就直接贴自己的代码了
import requests
def getweather(city):
r = requests.get('http://wthrcdn.etouch.cn/weather_mini?city=' + city)
data = r.json()['data']['forecast'][0]
return print('%s: %s,%s' % (city, data['low'], data['high']))
l=['北京','上海','石家庄','厦门','镇江','南京','西安','海南','保定','天津']
for x in l:
getweather(x)
这段代码的输出和老师的效果一模一样
难道是使用迭代器机器运算效率更高?
都是单线程,也不是协程,不用考虑异步,那为什么要用迭代器。。
写回答
1回答
-
程序员硕
2017-06-03
延迟计算, 用一个算一个, 而不是一口气全部计算出来, 节省内存.
222017-06-03
相似问题