python有没有方法在定义函数时限制参数的类型
不符合就报错这样的?比如求最小公约数 需要传入的x,y参数均为正整数
#1
#辗转相除法
def gcd(x,y):
if x < y:
x,y = y,x
#由大到小排列x,y
while x % y != 0 :
x , y = y , x%y
return y 加个判断:
#1
#辗转相除法
def gcd(x,y):
if isinstance(x, int) andisinstance(y, int) and x > 0 and y > 0:
if x < y:
x,y = y,x
#由大到小排列x,y
while x % y != 0 :
x , y = y , x%y
return y
else:
raise ValueError
可以将raise改为print方式 冬雪雪冬 发表于 2019-3-4 15:51
加个判断:
可以将raise改为print方式
功能确实是能实现 不过有没有在定义的阶段就限制参数的方法呢 这样调用函数就能判断 不用读到函数体里
页:
[1]