生成器表达式

#把列表推导式的[]换成()就是生成器表达式

#示例:把生一筐鸡蛋变成给你一只老母鸡,这也是生成器的特性

chicken=('鸡蛋%s' %item for item in range(10))

print(chicken) #生成器对象内存地址

 

print(next(chicken))  #鸡蛋0

print(next(chicken))  #鸡蛋1

print(next(chicken))  #鸡蛋2

......

print(next(chicken))  #鸡蛋9

or

for k in chicken:

    print(k)

 

示例:求文件a.txt中最长的行的长度(长度按字符个数算,需要使用max函数)

with open('a.txt','r',encoding='utf-8) as f:

    nums=(len(line) for line in f)

    print(max(nums))

 



posted @ 2018-06-13 14:52  艾玛1  阅读(89)  评论(0编辑  收藏  举报