向函数添加可选参数
Adding optional arguments to a function
我正在从事一个项目,我应该在其中向现有代码库添加新功能。作为其中的一部分,我需要向其中一个函数添加一个可选参数,但仅添加可选参数会导致我的一些单元测试失败。
该函数最初如下所示:
def function(
data1: list,
data2: list,
opt1: Optional[list],
)
添加另一个可选参数后,它看起来像这样:
def function(
data1: list,
data2: list,
opt1: Optional[list],
new: Optional[dict],
)
我在代码库中所做的唯一更改是添加了这个可选参数,它导致我的一些单元测试失败。我想知道是否有人知道可能是什么原因?
Optional[list]
表示参数可以是 list
或 None
。您仍然需要从调用者那里传递它。
如果您想要一个可以省略的参数,您应该使用默认值,例如:
def function(
data1: list,
data2: list,
opt1: Optional[list] = None,
)
假设 None
表示函数逻辑中省略了参数。
我正在从事一个项目,我应该在其中向现有代码库添加新功能。作为其中的一部分,我需要向其中一个函数添加一个可选参数,但仅添加可选参数会导致我的一些单元测试失败。
该函数最初如下所示:
def function(
data1: list,
data2: list,
opt1: Optional[list],
)
添加另一个可选参数后,它看起来像这样:
def function(
data1: list,
data2: list,
opt1: Optional[list],
new: Optional[dict],
)
我在代码库中所做的唯一更改是添加了这个可选参数,它导致我的一些单元测试失败。我想知道是否有人知道可能是什么原因?
Optional[list]
表示参数可以是 list
或 None
。您仍然需要从调用者那里传递它。
如果您想要一个可以省略的参数,您应该使用默认值,例如:
def function(
data1: list,
data2: list,
opt1: Optional[list] = None,
)
假设 None
表示函数逻辑中省略了参数。