我正在编写一个程序,用户必须输入一个介于0到100之间的数字。然后,该程序应该将数字分为10和1。因此,如果用户输入23,则程序将返回2和3。如果用户输入4,则程序将返回0和4。这是我对于小于10的数字所拥有的,但是我不确定如何处理2使用模运算符的数字。
def split():
number = int(raw_input("Enter a number between 0 and 100:"))
if number <10:
tens = 0
ones = number
total = tens + ones
print "Tens:", tens
print "Ones:", ones
print "Sum of", tens, "and", ones, "is", total
split()
谢谢!
最佳答案
使用divmod
功能。
>>> a, b = divmod(23, 10)
>>> a, b
(2, 3)
>>> print "Tens: %d\nOnes: %d" % divmod(23, 10)
Tens: 2
Ones: 3
不知道
divmod
吗? help
是您的朋友!>>> help(divmod)
Help on built-in function divmod in module __builtin__:
divmod(...)
divmod(x, y) -> (quotient, remainder)
Return the tuple ((x-x%y)/y, x%y). Invariant: div*y + mod == x.