编写一个程序接受并拆分两位数字
我现在正在用Python写一个程序,这个程序可以接受用户输入的两位数,并把这两个数字在一行上输出。
举个例子:我的程序会让用户输入一个数字,我们就用27这个数字来举例。
我希望我的程序能打印出“第一个数字是2”和“第二个数字是7”。我知道我需要用到取余运算符(%),但是我对这个还不太熟悉,有点困惑!
5 个回答
0
把两位数的数字想象成一个字符串,这样处理每个数字会更简单。使用str()这个函数可以把整数转换成字符串。取余运算可以让你把这些字符串放到你的文本中。
假设用户输入了27到一个叫做num的变量里,代码是:
print 'The first digit is %s and the second digit is %s' % (str(num)[0], str(num)[1])
1
从你的问题中不太清楚你是想用 %
来做字符串替换,还是用 %
来计算余数。
为了完整起见,使用取模运算符对整数进行计算的方式如下:
>>> val = None
>>> while val is None:
... try:
... val = int(raw_input("Type your number please: "))
... except ValueError:
... pass
...
Type your number please: potato
Type your number please: 27
>>> print 'The first digit is {}'.format(val // 10)
The first digit is 2
>>> print 'The second digit is {}'.format(val % 10)
The second digit is 7
2
试试这个:
val = raw_input("Type your number please: ")
for i, x in enumerate(val, 1):
print "#{0} digit is {1}".format(i, x)