【问题标题】:Using Output from Function 1 as Input in Function 2使用函数 1 的输出作为函数 2 的输入
【发布时间】:2019-07-23 02:33:22
【问题描述】:

所以我有一些如下代码:

def _step_1(a, b, c):
    some codes
    return d, e, f

def _step_2(d, e, f, a, b):
    some codes
    return g

def _run_all(a, b, c):
    g = _step_2(_step_1(a, b, c), a, b)
    return g

它告诉我我缺少两个参数“a”和“b”。有人可以通过尝试保存一些步骤来告诉我我是否做错了什么?还是没有办法保存步骤?我知道我绝对可以这样写:

def _run_all(a, b, c):
    d, e, f = _step_1(a, b, c)
    g = _step_2(d, e, f, a, b)
    return g

【问题讨论】:

  • 您只向_step_2() 传递了三个参数。尽管_step_1(a,b,c)的结果包含三个元素,它本身只是一个元组。正如@U9-Forward 回答的那样,如果您使用的是 Python 3,则可以自动将该结果解压缩为三个单独的值。
  • 感谢您的解释!是的,我使用的是 Python 3,它有效。

标签: python function user-defined-functions


【解决方案1】:

如果您的版本是 python 3,请使用解包 (*):

def _run_all(a, b, c):
  g = _step_2(*_step_1(a, b, c), a, b)
  return g

【讨论】:

    猜你喜欢
    • 2022-11-21
    • 2019-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-13
    • 2014-11-20
    相关资源
    最近更新 更多