我对编码非常陌生,我正在尝试编写一个python脚本,其中用户输入一个整数,它以扩展形式显示该整数,并将其提高到10的幂次方
示例:用户输入643541
,脚本输出643541 = (6x10^5 )+(4x10^4)+(3x10^3)+(5x10^2)+(4x10^1)+(1x10^0)
这是我的密码
A = [7000, 400, 70,1]
cond = True
y = 0
i = 0
sizeArray = len(A)
for i in range(0, sizeArray-1):
while cond == True:
if A[i]%10 == 0:
A[i] = A[i]/10
y += 1
else:
cond = False
print(y)
我试着用一个样本数组来测试零的数目,但是我不知道如何才能输出上面的结果。你知道吗
我怎样才能做到这一点?你知道吗
您可以将输入整数
643541
转换为数字数组[6,4,3,5,4,1]
。然后为指数保留一个变量。对于数组中的每个数字,它都将递减这里
len(digits)-i-1
扮演维持指数值的变量的角色每一个这样的问题都应该用一个列表来解决:
说明:
str(n)[::-1]
将数字转换为字符串,然后反转字符串,以字符串的形式给出数字的位数,从最低有效到最高有效。你知道吗enumerate
返回成对的t = (i, d)
,其中i
是索引,d
是数字。因为序列是从最低有效到最高有效的,所以指数等于相应的指数10。你知道吗*t
在格式字符串中为{0}
和{1}
解压(i, d)
,因此结果类似于({d}x10^{i})
。你知道吗[::-1]
将结果反转回正确的顺序。你知道吗'+'.join
将这些结果连接到一个字符串中,各部分之间带有+符号。你知道吗相关问题 更多 >
编程相关推荐