Py学习  »  Python

python-yield和raise异常

Sharvari Gc • 5 年前 • 1629 次点击  

我正在尝试编写一个函数,该函数生成两个变量,并根据条件引发异常。 下面是一个简单的例子:

def func():
  var1 = 0
  var2 = 1
  yield var1, var2
  if not var1 > var2:
    raise Exception(var1,var2)
var1, var2 = (1,1)
var1,var2 = func()

此结构当前不产生var1、var2并引发异常。 我需要它在这个函数内部产生一个异常,这样其他模块就可以直接使用这个函数而不需要额外的代码。 如果收益率声明不是一个好主意,那么什么是?

尝试- [_ for _ in func()] 但是var1和var2的值并没有像预期的那样从收益率上改变。
尝试- var1, var2 = next(func()) 这会产生,但不会引发异常。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43382
 
1629 次点击  
文章 [ 2 ]  |  最新文章 5 年前