yield 应用

def out_eat(name):
    print('%s ready to eat' %name)
    food_list=['茶水']
    while True:
        food=yield food_list
        food_list.append(food)
        print('%s start to eat %s' %(name,food))


person_one=out_eat('Trump')

#1、必须初始化一次,让函数停在yield的位置
res0=person_one.__next__()
print(res0)

#2、接下来的事,就是喂狗
#send有两方面的功能
#1、给yield传值
#2、同__next__的功能
res1=person_one.send('罗宋汤')
print(res1)
res2=person_one.send('炒牛柳')
print(res2)
res3=person_one.send('鱼香肉丝')
print(res3)

D:\Python\Python36\python.exe D:/Python_test/day_lesson/test.py
Trump ready to eat
[‘茶水’]
Trump start to eat 罗宋汤
[‘茶水’, ‘罗宋汤’]
Trump start to eat 炒牛柳
[‘茶水’, ‘罗宋汤’, ‘炒牛柳’]
Trump start to eat 鱼香肉丝
[‘茶水’, ‘罗宋汤’, ‘炒牛柳’, ‘鱼香肉丝’]

Process finished with exit code 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值