四、数据类型_4.(2).tuple - tuple推导式

tuple推导式

list推导式返回的是list,tuple推导式返回的是生成器
    list推导式 ==> [变量运算 for i in iterable] ==> list
    tuple推导式 ==> (变量运算 for i in iterable) ==> 生成器

什么是生成器
    生成器是一种特殊的iterator,生成器可以自定义,也可以使用tuple推导式来定义
    生成器按照指定算法来推算下一个数据,只需要往内存中存储一个生成器,节约内存,提升性能

语法:
    1.( 推导式 ) 结果就是生成器
    2.自定义生成器,含有yield关键字的函数就是生成器
      含有yield关键字的函数返回结果是iterator,生成器函数就是一个返回iterator的函数

list推导式
varlist = [1,2,3,4,5,6]
newlist = [i**3 for i in varlist]
print(newlist)

[1, 8, 27, 64, 125, 216]
tuple推导式
varlist = [1,2,3,4,5,6]
newtuple = (i**3 for i in varlist)
print(newtuple)

<generator object <genexpr> at 0x0000007590980148>
遍历生成器
# 使用next()
# print(next(newtuple))
# print(next(newtuple))

# 使用list()、tuple()
# print(tuple(newtuple))
# print(list(newtuple))

# 使用for循环
for i in newtuple :
    print(i)

1
8
27
64
125
216
上一篇:四、数据类型_4.(1).tuple 元组


下一篇:python 元组