如何从函数返回多个值?
def f(x): y0 = x + 1 y1 = x * 3 y2 = y0 ** y3 return (y0, y1, y2)
dict.
def g(x):
y0 = x + 1
y1 = x * 3
y2 = y0 ** y3 return {'y0': y0, 'y1': y1 ,'y2': y2}result['y0']
class ReturnValue: def __init__(self, y0, y1, y2): self.y0 = y0 self.y1 = y1 self.y2 = y2def g(x): y0 = x + 1 y1 = x * 3 y2 = y0 ** y3 return ReturnValue(y0, y1, y2)
{ y0, y1, y2 }__dict__ReturnValue.
__slots__
class ReturnValue(object): __slots__ = ["y0", "y1", "y2"] def __init__(self, y0, y1, y2): self.y0 = y0 self.y1 = y1 self.y2 = y2
这个 __slots__声明需要一个实例变量序列,并在每个实例中保留足够的空间来保存每个变量的值。节省空间是因为 __dict__不是为每个实例创建的。
@dataclassclass Returnvalue: y0: int y1: float y3: intdef total_cost(x): y0 = x + 1 y1 = x * 3 y2 = y0 ** y3 return ReturnValue(y0, y1, y2)
def h(x): result = [x + 1] result.append(x * 3) result.append(y0 ** y3) return result
白板的微信
鸿蒙传说
慕姐4208626
随时随地看视频慕课网APP
相关分类