打印九九乘法表 | python从入门到精通:入门篇之十八

简介: 利用上节课学过的循环嵌套打印九九乘法表。

第十七节:循环嵌套打印三角形星星阵

循环嵌套练习题

18.1 打印九九乘法表

拿到题目先别着急答题,先来分析一下这道题到底要运用哪些“知识点”!
观察一下,这个九九乘法表是不是和上节课的“三角形”阵是一样的框架呢,把每个公式当成一个整体,那就是一个九行的“三角形”阵,图形的高度确定了,那么外层的循环也就确定了。
现在来看内层的循环,也就是图形的宽度怎么写,先将其当作是三角形来打印一次:

i=0
while i<9:
    j=0
    while j<i+1:
        print("* ",end=' ')
        j += 1
    print()
    i += 1

执行结果为:
image.png
显然方向是对的,那么接下来将*换成公式:
image.png
第一行的内容是0开始的,是因为i和j的初始值为0,所以将i+=1j+=1放到循环体的前面来,先将i和j自增:
image.png
图形的宽度比之前多了一个1。在上一步骤里,先将i和j进行了自增,在内层循环里面的时候仍然是j<i+1,所以当外层循环执行一次,内层函数执行了一圈+1,才会导致这种情况发生,此时只需要将j<i+1改成j<i就好啦:
image.png
果然乘法表被大家找出来啦!可以自己多尝试几次,理解一下这个思考的过程。

18.2 找出100以内的所有质数

在之前的课程中咱们讲过如何判断一个数n为质数,首先引入了一个flag=True,然后用小于n的数去整除n,如果出现n%i==0,则证明可以整除,则不是质数。再返回来看这个问题,现在不是要求判断一个数字了,而是判断100以内的所有数字,那怎么能让程序判断完了一个数字之后再自动去执行下一个数字的判断呢,这就要用到循环了。首先搭建一个循环的框架,输出2~100的数字(从2开始是因为0不做判断,1既不是质数也不是合数):

i=2
while i<=100 :
    print(i,' ',end=' ')
    i+=1

执行结果为:
image.png
后面的数字就不展示了。
接下来就要去挨个判断这些数字是不是质数了,当判断是质数的时候再进行print输出。首先还是要引入一个flag,并且值为True,当用小于n的数去整除n,如果出现n%i==0,则不是质数,flag的值改为False,程序如下:

i=2
while i<=100 :
    flag = True
    j=2
    while j<i:
        if i%j==0:
            flag=False
        j+=1
    if flag :
        print(i)
    i+=1

执行结果为:
image.png
可以看到,所有的质数就被打印出来啦!
第十九节:循环终止语句之break和continue

视频学习:阿里云大学之Python进阶必看

配套Python进阶文章点击此处获取

相关文章
|
27天前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
235 7
|
2月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
302 1
|
3月前
|
API 数据安全/隐私保护 开发者
Python自定义异常:从入门到实践的轻松指南
在Python开发中,自定义异常能提升错误处理的精准度与代码可维护性。本文通过银行系统、电商库存等实例,详解如何创建和使用自定义异常,涵盖异常基础、进阶技巧、最佳实践与真实场景应用,助你写出更专业、易调试的代码。
157 0
|
3月前
|
IDE 开发工具 数据安全/隐私保护
Python循环嵌套:从入门到实战的完整指南
循环嵌套是Python中处理多维数据和复杂逻辑的重要工具。本文通过实例讲解嵌套循环的基本用法、常见组合、性能优化技巧及实战应用,帮助开发者掌握其核心思想,避免常见错误,并探索替代方案与进阶方向。
318 0
|
1月前
|
Cloud Native 算法 API
Python API接口实战指南:从入门到精通
🌟蒋星熠Jaxonic,技术宇宙的星际旅人。深耕API开发,以Python为舟,探索RESTful、GraphQL等接口奥秘。擅长requests、aiohttp实战,专注性能优化与架构设计,用代码连接万物,谱写极客诗篇。
Python API接口实战指南:从入门到精通
|
1月前
|
存储 Java 调度
Python定时任务实战:APScheduler从入门到精通
APScheduler是Python强大的定时任务框架,通过触发器、执行器、任务存储和调度器四大组件,灵活实现各类周期性任务。支持内存、数据库、Redis等持久化存储,适用于Web集成、数据抓取、邮件发送等场景,解决传统sleep循环的诸多缺陷,助力构建稳定可靠的自动化系统。(238字)
419 1
|
2月前
|
调度 数据库 Python
Python异步编程入门:asyncio让并发变得更简单
Python异步编程入门:asyncio让并发变得更简单
170 5
|
5月前
|
Python
Python字符串格式化利器:f-strings入门指南
Python字符串格式化利器:f-strings入门指南
328 80
|
2月前
|
数据采集 存储 XML
Python爬虫入门(1)
在互联网时代,数据成为宝贵资源,Python凭借简洁语法和丰富库支持,成为编写网络爬虫的首选。本文介绍Python爬虫基础,涵盖请求发送、内容解析、数据存储等核心环节,并提供环境配置及实战示例,助你快速入门并掌握数据抓取技巧。