美文网首页
Python 第6讲 打印九九乘法表

Python 第6讲 打印九九乘法表

作者: 我是MAXQIAN | 来源:发表于2018-05-19 15:51 被阅读0次

    让我们试着打印一个九九乘法表,来运用一下我们之前学到的内容。
    九九乘法表通常是长这样的。


    99乘法表.png

    很自然的想到需要2个数字,分别是从1到9,然后输出两个数字的乘积就可以。
    代码很简单,长这样:

    for a in range(1,10):
        for b in range(1,10):
            print ("%d*%d=%d " %(a,b,a*b))
    

    就是让a从1变到9,b也从1变到9,然后输出2个数字的结果。
    运行的结果是这样的


    运行结果

    这个和我们的需求还有点差距。我们需要调整一下。
    首先,每次b的循环不要让它换行。每次a的循环的时候再换行。

    for a in range(1,10):
        for b in range(1,10):
            print ("%d*%d=%d " %(a,b,a*b) , end="")
        print ("")
    

    因为python默认在每个print语句后面加上一个回车,所以我们在第一个print后面加了一句话end="",告诉Python不要加上这个回车,而是加上一个空的字符。然后我们再增加一个print语句,告诉python换一行。
    运行的效果是这样的:


    运行结果

    这个时候表格变成了一个99 的表格,比之前的样子要好一些了。但是没有对齐,比如12=2 和 7*7=49 的长度就不一样。我们再调整一下print语句里面的参数,变成

    print ("%d*%d=%d\t" %(a,b,a*b),end ="")
    

    这个\t表示的是在输出的最后跟上一个tab符号,tab符号是可以很准确的控制字符的位置的(用过WORD的同学们一定知道用空格对齐文本是很痛苦的,用TAB键就可以很轻松)。再运行一次:


    运行结果

    可以看到已经对的很整齐了。但是离最终的效果还差一点,我们要变成三角形的形状。看一下最终图片的规律,表格的第几行就有几列,而不是每一行都是9列。那我们只要改动一下b的那个for语句就可以

    for a in range(1,10):
        for b in range(1,a+1):
            print ("%d*%d=%d\t" %(a,b,a*b),end ="")
        print ("")
    

    把10换成a+1,这样a是几,b最多也就到几。运行的结果是这样的

    运行结果

    相关文章

      网友评论

          本文标题:Python 第6讲 打印九九乘法表

          本文链接:https://www.haomeiwen.com/subject/wcxadftx.html