await和yield from对比
不同点:yield from 后面的值,要么是生成器,要么是最终为可迭代对象,而await后面只能跟async开头的方法
相同点: 都是产出结果,让出控制权,等待返回结果
例子说明
分别用await和yield from实现了等待协程完成的过程
async def req1_sub(param):
return param+10
async def req1(param):
res = await req1_sub(param)
res += 100
return res
def req2_sub(param):
res = yield param+10
return res
def req2(param):
res = yield from req2_sub(param)
res += 100
return res
def print_value(f, args):
try:
b = f.send(args)
except StopIteration as e:
print(f'{f.__name__}返回值 {e.value}')
return e.value
else:
print(f'{f.__name__}接收 {b}')
return b
g1 = req1(1)
print_value(g1, None)
g2 = req2(2)
res = print_value(g2, None)
print_value(g2, res)
'''
结果:
req1返回值 111
req2接收 12
req2返回值 112
'''
审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
相关推荐
Triton编译器支持的编程语言主要包括以下几种: 一、主要编程语言 Python :Triton编译器通过Python接口提供了对Triton语言
发表于 12-24 17:33
•320次阅读
Python与Java都是目前非常流行的编程语言,它们各有其独特的优势和适用场景。以下是对这两种编程语言的对比: 一、语法和易用性 Python
发表于 11-15 09:31
•315次阅读
与NPU一起使用: C/C++ : C和C++是性能要求较高的应用的首选语言,尤其是在需要直接与硬件交互的场景中。许多NPU硬件都提供了C/C++接口,以便开发者能够充分利用硬件性能。 Python : Python是深度学习和
发表于 11-15 09:21
•660次阅读
C语言和Java语言都是当前编程领域中的重要成员,它们各自具有独特的优势和特点,适用于不同的应用场景。以下将从语法特性、内存管理、跨平台性、性能、应用领域等多个方面对C语言和Java语言
发表于 10-29 17:31
•340次阅读
在当今的人工智能领域,Python已经成为了最受欢迎的编程语言之一。Python的易学易用、丰富的库和框架以及强大的社区支持,使其成为了数据科学、机器学习和深度学习等领域的首选语言。而
发表于 08-01 15:27
•1967次阅读
Python作为一种功能强大、免费、开源且面向对象的编程语言,在科学计算、数学建模、数据分析等领域展现出了卓越的性能。其简洁的语法、对动态输入的支持以及解释性语言的本质,使得Python
发表于 07-24 10:41
•554次阅读
电子发烧友网站提供《Python语言基础2.rar》资料免费下载
发表于 07-17 17:23
•1次下载
是OpenCV的一个Python语言接口,它允许开发者使用Python语言来调用OpenCV库的功能。 虽然OpenCV和OpenCV-Python
发表于 07-16 10:38
•1195次阅读
在人工智能(AI)领域,Python因其简洁的语法、丰富的库和强大的社区支持,成为了最受欢迎的编程语言之一。本文将详细介绍Python中的人工智能框架,并通过具体实例展示如何使用这些框架来实现不同的人工智能应用。
发表于 07-15 14:54
•1737次阅读
在探讨使用Python进行自然语言处理(NLP)的广阔领域时,我们首先需要理解NLP的基本概念、其重要性、Python在NLP中的优势,以及如何通过Python实现一些基础的NLP任务
发表于 07-04 14:40
•456次阅读
async/await是一种用于处理异步操作的Promise语法糖,使得编写异步代码变得更加简单和易读。通过使用async关键字声明一个函数为异步函数,并使用await关键字等待Promise的解析(完成或拒绝),以同步的方式编写异步操作的代码。
发表于 04-02 20:57
•1049次阅读
async/await是一种用于处理异步操作的Promise语法糖,使得编写异步代码变得更加简单和易读。通过使用async关键字声明一个函数为异步函数,并使用await关键字等待Promise的解析
发表于 03-06 14:44
使用KIT_A2G_TC387_MOTORCTR开发项目的语言
2. Python语言支持KIT_A2G_TC387_MOTORCTR吗? 如果支持,使用 Python 是否更方便?
发表于 03-04 07:45
编程语言是一种人与计算机之间进行交流的方式,不同的编程语言有着不同的特点和用途。本文将对四种常见的编程语言——Python、Java、C++和JavaScript进行比较,分析它们的区
发表于 02-05 14:16
•1576次阅读
C语言、C++、Java和Python是四种常见的编程语言,各有优点和特点。 C语言: C语言是一种面向过程的编程
发表于 02-05 14:11
•2390次阅读
评论