【问题标题】:Default Parameters in Function Definition, Syntax problems.函数定义中的默认参数,语法问题。
【发布时间】:2019-01-14 21:00:22
【问题描述】:

我在为我的问题找到一个直截了当的答案时遇到了问题。

我正在编写一个程序,该程序具有某些参数的默认值,这些参数最终不会被用户调用。我的程序有点复杂,所以我决定尝试一个简化的问题。

def mult(x = 1, y = 2, z = 3):
    ans = x * y * z
    print(ans)

mult()

在这个快速程序中,函数调用将产生 6。这是有道理的,因为它使用了我提供的默认值。我的问题是,例如,如果我想定义 y 而不是任何其他变量,我该如何调用这个函数?在那种情况下正确的语法是什么。

我的直觉是调用 mult(x, 5, z) 来表示 x 和 z 的默认值,但表示 y 的新值。我知道这不起作用,并且想知道正确的语法是什么。

【问题讨论】:

  • mult(y=7) ....
  • @JoranBeasley 感谢您的澄清!

标签: python syntax default-value


【解决方案1】:

您可以在调用站点使用= 指定要提供的参数:

mult(y = 5)

【讨论】:

    【解决方案2】:

    你可以用关键字调用它

    mult(y=7) 
    
    mult(z=55)
    
    mult(z=12,y=16,x=5)
    
    mult(x=15)
    

    尽管顺便说一句,它可能比 return ans 更可取,而不是仅仅打印它...

    【讨论】:

      猜你喜欢
      • 2011-12-24
      • 2011-08-26
      • 2017-11-15
      • 1970-01-01
      • 1970-01-01
      • 2021-04-08
      • 1970-01-01
      • 1970-01-01
      • 2014-03-28
      相关资源
      最近更新 更多