我正在上一门 Python 入门课程,在一次练习中,我们将编写一个函数,在该函数中我们输入一个数字并返回 bool True 或 False,如果该数字是一个完美的数字。然后我们将创建另一个函数,它接受一个上限,并将检查每个数字直到该限制,如果它是一个完美的数字,则打印完美的数字。到目前为止,我的问题是这个 excersie 的第二部分,而不是打印出完美的数字,它会打印出“真”有多少。同样,第一个函数应该返回 True 或 False,所以我不确定我们如何让第二个函数打印出实际数字!
def perfect(num):
x=1
adding=0
while x<num:
if num % x == 0:
adding=adding+x
x=x+1
if adding==num:
#print(num)
return (adding==num)
else:
return False
def perfectList(upperlimit):
x=1
while x<upperlimit:
if perfect(x)==True:
print(perfect(x))
x=x+1