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

2021-09-03 10:34:31 字數 1885 閱讀 2444

#16.三元表示式  列表解析  生成器

# 三元表示式

# name="tom"

# print("ok" if name=="tom" else "no")

#列表解析

# a=[x for x in range(10)if x<5]

# print(a)

#生成器

# b=(i for i in range(15) )

# print(b.__next__())

# print(b.__next__())

# print(b.__next__())

#__next__() == next()

# def test():

# yield 0

# yield 1

# yield 2

# yield 3

# yield 4

## a=test()

# print(a.__next__())

# print(a.__next__())

#str

# s="hello world!"

# st=s.__iter__()

# print(st.__next__())

# print(st.__next__())

# ## chi=("egg%s"%i for i in range(10) if i>0)

# print(next(chi))

# print(next(chi))

# # # 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

十七 python沉澱之路 三元表示式 列表解析

一 三元表示式 1 a 騎車 23 res 好天氣 if a 騎車 else 睡覺 4print res 1 睡覺 解析 res 好天氣 if a 騎車 else 睡覺 將乙個句子分了三部分。簡單的邏輯運算可用這種三元表示式 二 列表解析 1 gift list 2for i in range 10...

python 迭代器 列表解析 三元表示式

一.迭代器 1.迭代器協議和迭代器物件 1 迭代器協議是指 物件必須提供乙個next方法,執行該方法要麼返回迭代中的下一項,要麼就引起乙個stoplteration異常,以終止迭代 2 可迭代物件 實現了迭代器協議的物件 如何實現 物件內部定義乙個 iter 方法 3 協議 是一種約束,可迭代物件實...

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

迭代器 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 列表解析把...