gpt4 book ai didi

python - 在具有可变参数的函数中使用默认参数。这可能吗?

转载 作者:太空狗 更新时间:2023-10-30 00:52:48 25 4
gpt4 key购买 nike

我有以下一段代码。在这里,我想利用给“a”的可选参数;即“5”,而不是“1”。如何使元组“数字”包含第一个元素为 1 而不是 2?

def fun_varargs(a=5, *numbers, **dict):
print("Value of a is",a)
for i in numbers:
print("Value of i is",i)
for i, j in dict.items():
print("The value of i and j are:",i,j)

fun_varargs(1,2,3,4,5,6,7,8,9,10,Jack=111,John=222,Tom=333)

最佳答案

执行此操作的“惯用”Python 方法是将可选参数默认为 None

def fun_varargs(a=None, *numbers, **dict):
if a is None:
a = 5
...

然后你可以明确选择不通过它。

fun_varargs(None, 1, 2, 3, 4, 5, some_keyword_arg=":)")

我不知道有什么方法可以实际上选择不传递可选参数。如果您正在寻找实用的解决方案,这就是您要走的路。但是,如果有一些更深入的技巧可以让你完全绕过这个论点,我也有兴趣看到它。

关于python - 在具有可变参数的函数中使用默认参数。这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53967210/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com