首页 > 编程语言 > 详细

python语法_列表生成式_生成式

时间:2018-12-09 15:41:15      阅读:154      评论:0      收藏:0      [点我收藏+]

列表生成式

a = [x for x in range(10)]

print(a)

x 可进行操作

a = [x*2 for x in range(10)]

print(a)

x甚至可以为函数,

def f(n):

  return n*n*n

a = [f(x) for x in range(10)]

########################

赋值方法

t = (‘123‘,8)
a,b = t
print(a)
print(b)
#############
a =(x for x in range(10))#
print(a)#generator object
这个时候打印出来的结果是一个生成器对象,并没有生成序列且将里面的元素并全部存进内存(列表生成器时生成的列表,列表里的元素已经全部存进内存了)
类比于之前是厨师做了N道菜出来(列表),菜(元素)全部吃进了肚子(内存),这里只是生成了一个厨师(生成器),想吃什么菜(元素)就调用厨师进行生成。

print(next(a)) 这样就可答应序列的第一个值了,next(a)等价于 a.__next__()
生成器里能迭代多少次,就能取多少次值,只能按顺序一个一个区,不能隔取,反顺序取,取完不能再进行曲了,会返回迭代错误的报错。
生成器就是一个可迭代对象Iterable object

python语法_列表生成式_生成式

原文:https://www.cnblogs.com/kevingm/p/10090955.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!