【发布时间】:2019-01-01 14:00:25
【问题描述】:
def gcd(a,b):
if b==0:
return a
else:
return gcd(b,a%b)
当我尝试使用任意 2 个数字打印 gcd 的输出时,我收到错误“TypeError:并非所有参数都在字符串格式化期间转换”。有什么想法吗?
【问题讨论】:
-
在第一次调用
gcd之前尝试打印b和a的类型 -
你是否接受用户输入来传递给这个函数?
-
你根本不是用整数调用函数,而是用字符串。如果这是在您使用
input()函数获取数字的程序中,请将输入的调用包装在对int的调用中。例如:value = int(input("type the first number: ")) -
我认为@jsbueno 对您的错误是正确的;将来,您应该包含所有代码(或足以完全重现问题的代码),包括调用此函数的代码、此函数的参数来自何处以及打印结果的位置。
-
是的,我用字符串调用它,非常感谢。
标签: python