max*_*max 1 python function python-3.x
Python中的标准做法是None用作默认参数值.
但是,如果客户端代码可以None用作合法参数值,则这种惯用法不会很好.在这种情况下,函数无法判断客户端代码是否省略了参数,或者是否显式传递了该参数None.这不好,除非(幸运的是)函数的行为在两种情况下都应该相同.
什么是好的解决方案?
_NOT_SET = object()
def some_function(some_arg=_NOT_SET):
if some_arg is _NOT_SET:
# ...
Run Code Online (Sandbox Code Playgroud)
任何类实例都具有is可以分辨的唯一标识.