编写一个程序接受并拆分两位数字

5 投票
5 回答
1746 浏览
提问于 2025-04-17 19:57

我现在正在用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)

撰写回答