【问题标题】:How to use the result of one function as a parameter of a new function in python?如何将一个函数的结果用作python中新函数的参数?
【发布时间】:2022-11-15 02:35:10
【问题描述】:

例如:

def title(a,b):
   ...
 
def movie( c = title, d):
     ...

但我得到: NameError: name 'title' is not defined

如何在函数“电影”中使用函数“标题”?

我尝试过:

def movie(title(a, b), c):

但是 SyntaxError: invalid syntax 现在。

【问题讨论】:

  • 调用函数时使用它:movie(title('x', 'y') 'z')
  • 你期待吗默认值是调用title的结果?有什么论据?或者您是否希望函数本身是默认值,在这种情况下您发布的内容确实有效title已定义,问题是您后面有一个非默认参数 - 您肯定不会得到 NameError: name 'title' is not defined,所以请给出一个实际的 minimal reproducible example)。
  • title 函数需要返回一些有用的东西。
  • 'x', 'y' 代表什么?标题中是“a”、“b”吗?
  • 是的,我希望默认值是调用 title 的结果

标签: python function parameters


【解决方案1】:

当你在电影中调用函数时,还要给它参数(你的 a 和 b) 喜欢:

movie(title(a, b), c)

【讨论】:

  • 欢迎来到堆栈溢出。根据评论讨论,这不是 OP 试图提出的问题。但是,请不要试图回答令人困惑或不清楚的问题。见How to Answer
【解决方案2】:
def add(a, b):
    return a + b

def mult(c, d):
    return c * d

print(mult(add(2, 2), 3))
#          ^   ^  ^   ^
#          |   |  |   |
#function "c"=(a +b),*d

# (2 + 2) x 3 = 12
#  ^   ^    ^
#  |   |    |
#  a   b    d

【讨论】:

  • 根据评论讨论,这不是 OP 试图提出的问题。但是,请不要试图回答令人困惑或不清楚的问题。见How to Answer
猜你喜欢
  • 2020-03-14
  • 2018-06-30
  • 1970-01-01
  • 1970-01-01
  • 2017-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多