每日python小白之如何打印九九乘法表

 更新时间:2024年11月13日 09:37:10   作者:A.sir啊  
这篇文章主要给大家介绍了关于用python如何打印九九乘法表的相关资料,包括初级版和完整版,初级版通过双层循环输出每个乘法表的行,完整版通过调整内层循环的范围,使得每行的乘法表输出更加规范,文章还提供了代码解释和一些小技巧,需要的朋友可以参考下

一、代码展示

以防各位心急,咱先搬上来代码:

代码一:初级版

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

效果:

代码二:完整版

for i in range(1, 10):
    for j in range(1, i + 1):
        print("%d*%d=%d"%(i,j,i*j),end=" ")
    print()

效果:

二、代码讲解

1.代码一讲解

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

如果你能明白双循环,相信代码一对你来说只是小问题。

我们定义两个循环:一个关于i的循环,从1到9;一个关于j的循环,从1到9

最开始,i的值是1不变,j的值从1循环到9,然后输出

然后i的值变成2,j的值再次从1到9,然后输出

……

一直到i的值变位9,j的值从1循环到9,再次输出,然后结束

所以,会得到第一行是1乘1到9的乘法表,第二行是2乘1到9的乘法表,然后以此类推

Tips1:第一个print最后的end= “ ” 的意思是让它输出空格,因为计算机默认print每一次输出后都要换行,所以我们加上end= “ ”后,它就会将1乘1到9输出到一行。否则,你就会得到下图:

Tips2:第二个print的意思是换行,在python中输出换行,就是print( ),当然还有其他办法,这里不多介绍,详情看后续文章。

Tips3:你可能注意到第一个print里有三个%d,它的意思是告诉计算机,让他依次输出i,j,i乘j的值,你可能会问,那为啥不直接写成print(i*j=i*j)呢?相信写出来的时候,你已经明白了,计算机分不清哪个分别写出i和j哪个输出i*j的值啊,所以我们用%d来代替表示,"%d*%d=%d"%(i,j,i*j)我们用双引号来括住你要表达的形式,即谁乘谁=谁,所以是%d*%d=%d,然后后面直接加上一个%来告诉计算机,后面括号里的东西,就是%d依次要代表的东西

输出完后,我们可能有点困惑:这跟我印象中的乘法表不太一样啊!

所以有了下面代码二的升级版 

2.代码二讲解

for i in range(1, 10):
    for j in range(1, i + 1):
        print("%d*%d=%d"%(i,j,i*j),end=" ")
    print()

我们先仔细观察一下乘法表:

第一行1*1=1

第二行2*1=2        2*2=4

可以发现,j的最大循环值一开始是1,然后是2,不再是固定的9了,我们可以找规律发现,每一次j的最大循环值跟i的值是相等的。

你看,一开始i是1,所以j最大到1就结束了,然后看第2行,此时i变成2了,说明j的循环结束了,此时i已经开始循环到2了,j马上要再次开启循环:j的值依次是1,2,然后结束,直接开始第三行了。

所以,我们可以直接设定j的循环范围就是1到i,即代码:range(1,1+i)

要记得range里面左闭右开,相当于大于等于1小于i+1哦!

其他的就跟代码一一样了,关于两个print可以看代码一中的TIps哦~

总结

到此这篇关于python如何打印九九乘法表的文章就介绍到这了,更多相关python打印九九乘法表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python学习实操案例(三)

    python学习实操案例(三)

    这篇文章主要介绍了python学习实操案例,循环输出26个字母对应的ASCII码值、模拟用户登录、猜数游戏练习等案例,需要的小伙伴可以参考一下,希望对你有一定的帮助
    2022-02-02
  • pyqt5 设置窗口圆角及阴影的操作

    pyqt5 设置窗口圆角及阴影的操作

    这篇文章主要介绍了pyqt5 设置窗口圆角及阴影的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • python中@staticmethod方法的使用

    python中@staticmethod方法的使用

    这篇文章主要介绍了python中@staticmethod方法的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Python结合多线程与协程实现高效异步请求处理

    Python结合多线程与协程实现高效异步请求处理

    在现代Web开发和数据处理中,高效处理HTTP请求是关键挑战之一,本文将结合Python异步IO(asyncio)和多线程技术,探讨如何优化请求处理逻辑,解决常见的线程事件循环问题,有需要的小伙伴可以根据需求进行选择
    2025-04-04
  • 利用PyQt5中QLabel组件实现亚克力磨砂效果

    利用PyQt5中QLabel组件实现亚克力磨砂效果

    Windows10 在 UWP 应用中支持亚克力画刷,可以在部件的底部绘制亚克力效果的背景图。本文将使用QLabel来模拟这个磨砂过程,感兴趣的可以了解一下
    2022-03-03
  • Python去除、替换字符串空格的处理方法

    Python去除、替换字符串空格的处理方法

    这篇文章主要介绍了Python去除、替换字符串空格的处理方法,去除字符串空格有两种方法,一种是 .replace(' old ',' new '),第二种方法也很简单,需要的朋友可以参考下
    2018-04-04
  • Python中线上目录遍历的避坑指南

    Python中线上目录遍历的避坑指南

    做服务器运维、日志归档、磁盘巡检、过期文件清理时,几乎人人都要写目录遍历脚本,线上目录远比本地测试环境复杂,本文小编为大家整理了一些Python中线上目录遍历的避坑方法,希望对大家有所帮助
    2026-06-06
  • django-xadmin根据当前登录用户动态设置表单字段默认值方式

    django-xadmin根据当前登录用户动态设置表单字段默认值方式

    这篇文章主要介绍了django-xadmin根据当前登录用户动态设置表单字段默认值方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • VS2019+python3.7+opencv4.1+tensorflow1.13配置详解

    VS2019+python3.7+opencv4.1+tensorflow1.13配置详解

    这篇文章主要介绍了VS2019+python3.7+opencv4.1+tensorflow1.13配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • pytorch动态网络以及权重共享实例

    pytorch动态网络以及权重共享实例

    今天小编就为大家分享一篇pytorch动态网络以及权重共享实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01

最新评论