如何在Python中拆分数字?

时间:2017-10-23 00:07:04

标签: python

我一直试图分开数字,出于某种原因,第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

4 个答案:

答案 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