Python 中可选参数的工作原理
How optional arguments works in Python
我一直在读一本书,并卡在了可选参数的主题上。
• 可以为不需要的参数定义默认值
通过
>>> def func(a, b, c=10, d=100):
print a, b, c, d
>>> func(1,2)
1 2 10 100
我不明白...怎么办?花了一个小时谷歌搜索但无法理解。
正在阅读这本书和那个主题。我只是不明白为什么 func(1,2)
给我 1,2,10,100
。我是说,它怎么知道的?
理解此类主题的最佳方法是在 IDE 中进行实验。
def func(a, b, c=10, d=100):
pass
如果您使用 2 个参数调用 func
(就像您的示例中的那样),则 c
和 d
使用它们的默认参数,这些参数在函数签名中指定 above.p
您可以简单地通过指定它们来覆盖默认值 - 以我向该函数发送 3 个参数的这个例子为例
>>> func(1,2,3)
<<< 1 2 3 100
如果不正式定义c
和d
,则调用变为:
func(1,2,10,100)
如果您没有正式定义 d
,调用 func(1,2,5)
等同于:
func(1,2,5,100)
希望对您有所帮助...
我一直在读一本书,并卡在了可选参数的主题上。
• 可以为不需要的参数定义默认值 通过
>>> def func(a, b, c=10, d=100):
print a, b, c, d
>>> func(1,2)
1 2 10 100
我不明白...怎么办?花了一个小时谷歌搜索但无法理解。
正在阅读这本书和那个主题。我只是不明白为什么 func(1,2)
给我 1,2,10,100
。我是说,它怎么知道的?
理解此类主题的最佳方法是在 IDE 中进行实验。
def func(a, b, c=10, d=100):
pass
如果您使用 2 个参数调用 func
(就像您的示例中的那样),则 c
和 d
使用它们的默认参数,这些参数在函数签名中指定 above.p
您可以简单地通过指定它们来覆盖默认值 - 以我向该函数发送 3 个参数的这个例子为例
>>> func(1,2,3)
<<< 1 2 3 100
如果不正式定义c
和d
,则调用变为:
func(1,2,10,100)
如果您没有正式定义 d
,调用 func(1,2,5)
等同于:
func(1,2,5,100)
希望对您有所帮助...