函数中的必需参数和可选参数

时间:2016-08-22 10:02:31

标签: python python-3.x

我在函数中使用可选参数和必需参数时遇到问题。

def process_data(*stock, currency)

使用参数

process_data('IVV', 'QQQ', 'USD')

产生错误“TypeError:process_data()缺少1个必需的仅限关键字参数:'currency'”

2 个答案:

答案 0 :(得分:2)

你需要告诉Python美元是货币,因为它无法知道如何为变量赋值:

process_data('IVV', 'QQQ', currency='USD')

答案 1 :(得分:0)

在函数定义中使用*params 在调用该函数时将所有位置参数分组为元组。为了捕获任何额外的参数,您需要以关键字形式提供它们;提供他们的名字:

process_data('IVV', 'QQQ', currency='USD')

您也可以指定currency,其默认值为USD

def process_data(*stock, currency='USD')

除非您需要其他货币,否则无需在通话时指定货币:

process_data('IVV', 'QQQ')