生成器表示式 三元表示式 列表解析

2022-08-23 00:06:14 字數 1427 閱讀 7356

迭代器

s=['

dog','

cat'

]res=s.__iter__

()print(res.__next__

())print(res.__next__())

迭代器就是_iter_(),

laomuji=('雞蛋%s'%i for i in range(10))#生成器表示式不需要再呼叫iter

res=['雞蛋%s'%i for i in range(10)]#列表解析把【】換掉就是生成器表示式
#

# # s=['dog','cat']

## # res=s.__iter__()

## # print(res.__next__())

## # print(res.__next__())

## #生成器就是函式中有yield而不是return

## #生成器

## def test():

## yield 1

## yield 2

## yield 3

## g=test()

## print(g)

## print(g.__next__())

##三元表示式

##name='cat'

#name='dog'

#res='you are so clever' if name =='cat' else 'you are so stupy'

#print(res)

#列表解析

#egg_list=

#for i in range(10):##

print(egg_list)##

res=['雞蛋%s'%i for i in range(10)]#生成列表好用,但是佔記憶體

#print(res)

#res=['雞蛋%s'%i for i in range(10) if i <5]#只有三元表示式沒有四元表示式

#print(res)

##生成器老母雞

# laomuji=('雞蛋%s'%i for i in range(10))#生成器表示式

# print(laomuji)

# print(laomuji.__next__())

# print(laomuji.__next__())

# print(next(laomuji))

#列表求和sum函式

s=[1,2,3,4,5]

print

(sum(s))

print(sum( i for i in range(6) ))#

0-5

三元運算,生成器表示式,列表解析

生成器是可迭代物件,可以理解成為一種資料型別,這種資料型別自動實現了迭代器協議 其他的資料型別需要呼叫自己內建的 iter 方法 在python中有兩種表現形式,一種是以函式的形式yield 二是生成器表示式 yield 函式 def test yield 1g test print g 輸出乙個生...

三元運算,列表解析,生成器表示式

一,生成器就是可迭代物件,可以理解為一種資料型別,這種資料型別自動實現了迭代器協議。1.生成器函式 常規函式定義,但是使用yield語句而不是return語句,yield可以返回多個值。可以保留函式的執行狀態。2.第二行的式子稱為 三元表示式 沒有四元表示式,可以兩元 name alex res h...

三元表示式 列表生成式 生成器表示式

1三元表示式 三元表示式是python為我們提供的一種簡化 的解決方案,語法如下 res 條件成立時返回的值 if 條件 else 條件不成立時返回的值 針對以下場景 def max2 x,y if x y print x else print y max2 1,2 用三元表示式可以一行解決 x 1...