我想在一行中显示正整数的数字。 例如,如果输入是
4316
我希望它输出
4+3+1+6
输入也可以是任意数量的数字。
答案 0 :(得分:2)
拨打str
号码,然后str.join
结果:
i = 4316
print("+".join(str(i)))
4+3+1+6
答案 1 :(得分:0)
number=5132
print "+".join([c for c in str(number)])
5+1+3+2
答案 2 :(得分:0)
这是一个更优雅的解决方案,封装在一个更强大的函数中,因为可以使用任何可转换为字符串的字符串或任何数据格式。
def add_operator(operator, number):
return str(operator).join(str(number))
add_operator("+", 4316) # or print(add_operator("+", 4316))
'4+3+1+6'
另请参阅str.join
方法。您只需提供可迭代的内容作为str.join
的参数。 str
是可迭代的,这就是您必须将数字(int
)转换为字符串(str
)的原因。
此解决方案可以扩展,请参阅以下示例:
add_operator("-", 4316)
'4-3-1-6'
add_operator("*", 123456)
'1*2*3*4*5*6'
add_operator("xyz", "000")
'0xyz0xyz0'