Python代码,各位的位数次方相加

用Python表达出来
输入一个数字,判断是几位数,然后各个位的几位数次幂相加

比如说输入135,135是三位数,
输出13+33+5**3=153

n = input
power = len(n)
numbers = []
sum = 0
add = 1
for i in n:
    numbers.append(i)
for i in numbers:
    for j in range(power):
        add = add * i
    sum += add
print(sum)

有用的话采纳一下

>>> n = input()
135
>>> sum([int(i)**len(n) for i in list(n)])
153
>>> n = input()
1230
>>> sum([int(i)**len(n) for i in list(n)])
98
>>> 1**4 + 2**4 + 3**4 + 0**4
98

这个问题要考察的地方不多

  1. 输入如何转换成非负整数
  2. 非负整数有效位数的确定
  3. 非负整数各位的提取
  4. 最后各位按要求计算求和

其中 一些需要注意的地方,比如 输入 000345 这个最后其实只是3位有效数字的整数。

你自己的初始思路呢?