这篇文章主要介绍了python使用生成器的方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python使用生成器的方法文章都会有所收获,下面我们一起来看看吧。
尽可能使用生成器
单机处理较大数据量时,生成器往往很有用,因为它是分小片逐次读取,最大程度节省内存,如下网页爬取时使用yield
import requests
import re
def get_pages(link):
pages_to_visit = []
pages_to_visit.append(link)
pattern = re.compile('https?')
while pages_to_visit:
current_page = pages_to_visit.pop(0)
page = requests.get(current_page)
for url in re.findall('<a href="([^" rel="external nofollow" ]+)">', str(page.content)):
if url[0] == '/':
url = current_page + url[1:]
if pattern.match(url):
pages_to_visit.append(url)
# yield
yield current_page
webpage = get_pages('http://www.example.com')
for result in webpage:
print(result)
关于“python使用生成器的方法”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“python使用生成器的方法”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注天达云行业资讯频道。