我是非常新的python编程,虽然我在if语句内编写以下代码,但确定了a的值,但是,在我返回调用方之后,返回值始终为none,是否缺少任何内容来将if内的值返回阻止递归调用。
#! /usr/bin/env python3
def gcd_calc(a, b):
if(b == 0):
print(a)
return a
c= a%b
gcd_calc(b,c)
if __name__ == "__main__":
a, b = map(int, input().split())
if(a<b):
print(gcd_calc(a,b))
else:
print(gcd_calc(b,a))
return
def gcd_calc(a, b):
if(b == 0):
print(a)
return a
c= a%b
return(gcd_calc(b,c)) #you need to return here as you are calling recursively
if __name__ == "__main__":
a, b = map(int, input().split())
if(a<b):
print(gcd_calc(a,b))
else:
print(gcd_calc(b,a))