范围采用1、2或3个参数。这可以通过
def range(*args)和显式代码实现,当它获得0个或3个以上参数时引发异常。
无法使用默认参数来实现它,因为默认值之后不能再有非默认值,例如
def range(start=0, stop,step=1)。从本质上讲,这是因为python必须弄清楚每个调用的含义,因此,如果要使用两个参数进行调用,python将需要一些规则来确定您要覆盖的默认参数。除了没有这样的规则,根本不允许这样做。
如果确实要使用默认参数,则可以执行以下 *** 作:
def range(start=0, stop=object(),step=1)并明确检查的类型
stop。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)