使用用户输入在python中创建乘法表

时间:2012-08-27 08:32:41

标签: python

我对python非常陌生,所以我的问题可能看起来有点过于微不足道了,但请相信我,就像我现在的火箭科学一样。所以,在这里。我必须创建一个程序,读取包含整数的单行用户输入,并打印出该数字的倍数,最多为该数字的12倍。例如:

输入一个数字:3

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30
3 x 11 = 33
3 x 12 = 36

我认为我必须使用for和range函数但不知道如何做到这一点。请帮帮我:(

5 个答案:

答案 0 :(得分:3)

这是一个非常基本的程序,所有上述内容都包含在基本的python本身中。

您应该浏览以下链接,例如Bytes of PythonLearnPython

有更多教程供您参考并开始使用..

此行接受来自用户的输入

In [8]: n = raw_input("Enter a number : ")
Enter a number : 5

这一行迭代了值1到12的值,在python中我们可以使用范围函数。

range(1, 13)是因为范围函数在最后一个值之前停止了。

%s是字符串格式化语法,类似于C,最后int(n)是coz输入是字符串格式,需要在乘法发生之前将其转换为int

In [9]: for i in range(1,13):
   ...:     print "%s x %s = %s" %(n, i, i*int(n))
   ...:
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
5 x 11 = 55
5 x 12 = 60

答案 1 :(得分:0)

x = raw_input('Enter a number: ')
for i in range(1,12):
   print int(x)*i

但是你应该检查x是否真的是一个数字;)

答案 2 :(得分:0)

>>> inp=int(raw_input('enter an integer'))
enter an integer 5
>>> for i in xrange(1,13):         #use range() if you're on python 3.x
...   print "{0} X {1} = {2}".format(inp,i,inp*i)
... 
5 X 1 = 5
5 X 2 = 10
5 X 3 = 15
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35
5 X 8 = 40
5 X 9 = 45
5 X 10 = 50
5 X 11 = 55
5 X 12 = 60

答案 3 :(得分:0)

var = raw_input("Enter something: ")
print "you entered ", var

for n in range(1, 10):
    prod = int(var)*n
    print str(var) + " X " + str(n) + " = "  + str(prod)

答案 4 :(得分:0)

这是一个难以理解的oneliner,适合推文,因为为什么不:

import itertools;print"\n".join("%d x %d = %d"%(x+(x[0]*x[1],))for x in itertools.product([int(raw_input("Enter a number : "))],range(1,13)))