我一直试图分开数字,出于某种原因,第6行的乘法似乎并没有起作用。
number=list(input("Print number"))
length = len(number)
x=0
for x in range (0,len(number)):
length = length - 1
a = number[x] * (10 ** length)
print(a)
示例输入:123
预期产量:100 20 3
答案 0 :(得分:0)
你的功能的修改形式,工作正常。
number = list(input("Print number"))
length = len(number)
for x in range(length):
length = length - 1
a = int(number[x]) * (10 ** length)
print(a)
输出:
100 20 3
答案 1 :(得分:0)
你可以试试这个:
number=list(input("Print number"))
final_list = ' '.join(a+''.join("0" for b in range(len(number)-i-1)) for i, a in enumerate(number))
print(new_list)
输出:
'100 20 3'
答案 2 :(得分:0)
您可以像以下一样
def break_number (num):
num_str = str (num)
num_str_r = num_str [::-1]
output = ["place_holder"]
for index, i in enumerate (num_str_r):
output.insert (0, int (i) * 10**index)
return output [:-1]
例如,
break_number (2120) # --> [2000, 100, 20, 0]
break_number (543210) # --> [500000, 40000, 3000, 200, 10, 0]
答案 3 :(得分:0)
这是你可以使用的单行:
if