如果n以外的因子总和为n,程序需要返回true。我需要在运行时使用函数名称。当我输入我的程序显示意外的令牌错误。为什么?
factors(45)
它显示有一个未解决的标记错误。请检查程序有什么问题。
def factors(n):#unexpected token error
factorlist = []
for i in range(1,n):
if n%i == 0:
factorlist = factorlist + [i]
return(factorlist)
def perfect(n):
if sum(factorlist) == n:
return(True)
else :
return(False)
'factorlist'不'完美的(N)'函数引用。可能你想要'factorlist = factors(n)'? – Tushar
可以在程序中进行修正。我无法得到它。我刚开始学习python。请 –
'45'不是完美的号码。所以,它返回'False'。 –