Python 函数中可选值的类型
伙计们。我正在学习Python,但我对函数中的“可选参数”有疑问(我希望它是这样调用的,如果不是,请纠正我) 我有一个这样写的函数:Python 函数中可选值的类型,python,function,optimization,optional-parameters,Python,Function,Optimization,Optional Parameters,伙计们。我正在学习Python,但我对函数中的“可选参数”有疑问(我希望它是这样调用的,如果不是,请纠正我) 我有一个这样写的函数: def get_formatted_name(first_name, last_name, middle_name = None): ... 我对最后一个参数“middle\u name”有疑问。当它是可选的时,像这样的“字符串或以None的形式存储它是否更好?其中一个或另一个是否有一些优点,或者是相同的?其中一个是否需要与另一个相同的存储量?或者是否有其他更好
def get_formatted_name(first_name, last_name, middle_name = None):
...
我对最后一个参数“middle\u name
”有疑问。当它是可选的时,像这样的“
字符串或以None
的形式存储它是否更好?其中一个或另一个是否有一些优点,或者是相同的?其中一个是否需要与另一个相同的存储量?或者是否有其他更好的方法来存储可选值
谢谢你的回答。对于这个“原始”的问题,我很抱歉,但我想知道什么是最好的解决方案。我建议将其存储为
None
。更具可读性。然后,您可以将条件写为:
if middle_name is None:
或
实际上,有些人没有中间名。从语义上讲,最好使用
None
,因为它不代表任何东西,而“
仍然是一个带有方法的字符串,这可能取决于函数内部的用法。它被称为默认参数。许多人建议使用None作为默认参数,以避免和增加函数。也可以认为中间名是一个字符串,可能是空的,将其作为字符串可以将其与名称的其他部分连接起来,例如,不必担心其内容。
if middle_name is not None: