当前位置: 首页 > 面试题库 >

函数参数的默认值等于另一个参数[重复]

仲孙昊焱
2023-03-14
问题内容

这个问题已经在这里有了答案

有没有办法将默认参数设置为等于另一个参数值? (4个答案)

5年前关闭。

是否可以在同一函数定义中将函数参数的默认值定义为另一个参数?就像是:

def func(a, b=a):
  print a, b

但这没用。


问题答案:

不可以。Python解释器认为要说法的默认值分配b到一个全局变量a时,没有一个全局变量a

您可能想要尝试这样的事情:

def func(a, b=None):
    if b is None:
        b = a


 类似资料:
  • 对于一些函数,你可能希望它的一些参数是 可选 的,如果用户不想要为这些参数提供值的话,这些参数就使用默认值。这个功能借助于默认参数值完成。你可以在函数定义的形参名后加上赋值运算符(=)和默认值,从而给形参指定默认参数值。 注意,默认参数值应该是一个参数。更加准确的说,默认参数值应该是不可变的——这会在后面的章节中做详细解释。从现在开始,请记住这一点。 使用默认参数值 例7.5 使用默认参数值 #!

  • Scala 函数 Scala 可以为函数参数指定默认参数值,使用了默认参数,你在调用函数的过程中可以不需要传递参数,这时函数就会调用它的默认参数值,如果传递了参数,则传递值会取代默认值。实例如下: object Test { def main(args: Array[String]) { println( "返回值 : " + addInt() ); } def

  • 例如,我想要: 如果用户已指定增量,请使用它。如果不是,请使用依赖于 n 的值。这可能吗?

  • 问题内容: 例如,我想要: 如果用户指定了增量,请使用它。如果不是,则使用取决于n的值。这可能吗? 问题答案: 该语言不支持这种语法。 对于这些情况(*),通常的解决方法是使用不是有效输入的默认值。 (*)当默认值是可变的时,也会出现类似的问题。

  • 哪个编译器就在这里?

  • 在 C++中,定义函数时可以给形参指定一个默认的值,这样调用函数时如果没有给这个形参赋值(没有对应的实参),那么就使用这个默认的值。也就是说,调用函数时可以省略有默认值的参数。如果用户指定了参数的值,那么就使用用户指定的值,否则使用参数的默认值。 所谓默认参数,指的是当函数调用中省略了实参时自动使用的一个值,这个值就是给形参指定的默认值。下面是一个简单的示例: 运行结果: 10, 3.5, # 2