首页 > 解决方案 > 尝试打印时无输出

问题描述

我正在尝试编写一个 python 代码,在其中输入一个数字,该数字应该是 3 的倍数,并计算每个数字的 3 的幂的总和,ig: input'12' => 3 的倍数应该返回 1^ 3 +2^3 = 9 我试过这个脚本,运行时什么也没有,是什么问题

number= input('give a number: ')
TT=list(number)  
if int(number)==0:
    print('wrong number')
elif int(number)%3:
    for x in (range(len(TT))-1):
        aggregate=sum(int(TT[x])**3)
        print(f'the aggregate of {number} is {aggregate}')

标签: python

解决方案


没有任何条件为真,因此不会显示任何值。如果输入 12,则 12 % 3 等于 0(假)。

看看python真值测试

您应该更新这一行:

elif int(number)%3 == 0:

现在,整个代码需要修改才能获得您想要的结果。让我做一些改变:

number= input('give a number: ')
aggregate = 0
if int(number)==0:
    print('wrong number')
elif int(number) % 3 == 0:
    for x in number:
        aggregate += int(x) ** 3
print(f'the aggregate of {number} is {aggregate}')

推荐阅读