Python 不可调用的字符串对象 def电源(num,div): 增量=0 而(num%div==0): num=num/div 增量+=1 返回增量 测试用例=int(原始输入() lim=0 当lim
Python在出现此错误之前一直正常工作。总是返回字符串对象。因此,这一行:Python 不可调用的字符串对象 def电源(num,div): 增量=0 而(num%div==0): num=num/div 增量+=1 返回增量 测试用例=int(原始输入() lim=0 当lim,python,string,python-2.7,typeerror,Python,String,Python 2.7,Typeerror,Python在出现此错误之前一直正常工作。总是返回字符串对象。因此,这一行: def power(num,div): incre =0 while(num%div == 0): num = num/div incre +=1 return incre test_case = int(raw_input()) lim = 0 while lim < test_case: power = (raw_input())
def power(num,div):
incre =0
while(num%div == 0):
num = num/div
incre +=1
return incre
test_case = int(raw_input())
lim = 0
while lim < test_case:
power = (raw_input())
x = power.split()
a = int(x[0])
b = int(x[1])
lim +=1
print power(a,b)
使power
成为字符串。此外,当这种情况发生时,它会覆盖您的函数power
当你说到这一点时:
power = (raw_input())
power
是一个字符串,如果试图像调用函数一样调用它,则会出现错误
要解决此问题,请重命名函数或字符串。它们都不能命名为
power
哪个错误?你能解释一下吗?谢谢,我之前做了幂函数,只是复制了它,下次当你给这两个东西取相同的名字时,会使用import。导入不会有帮助,除非函数属于某个包,例如,在这种情况下,您将调用myfunctions.power(a,b)。在这种情况下,名称空间是不同的,并且没有冲突。@user2688772即使您将power
导入到名称空间中,如果您用字符串覆盖它,也会得到相同的错误。您需要将电源串命名为其他名称。
print power(a,b)