当前位置: 首页 > article >正文

6个月Python学习计划 Day 3

🎯 今日目标

  • 掌握 while 和 for 循环的使用方式
  • 理解 range() 的工作机制
  • 实践:打印 1~100、累加、九九乘法表等常见程序逻辑

🧠 学习内容详解

  1. while 循环

    i = 1
    while i <= 5:print(f"第 {i} 次循环")i += 1
    

    📌 特点:先判断再执行,适合“直到满足某个条件前一直做”的任务

  2. for 循环 + range()’

    # range(起始, 结束, 步长),不包含结束值
    for i in range(1, 6):print(f"第 {i} 次循环")
    

    📌 range() 用法:

    range(5)        # 0,1,2,3,4
    range(1, 5)     # 1,2,3,4
    range(1, 10, 2) # 1,3,5,7,9
    
  3. 常见循环任务实例
    ✅ 打印 1~100 所有数字

    for i in range(1, 101):print(i, end=" ")
    

    ✅ 计算 1~100 的累加和

    total = 0
    for i in range(1, 101):total += i
    print("1~100 的总和是:", total)
    
  4. 九九乘法表(嵌套循环)

    for i in range(1, 10):for j in range(1, i + 1):print(f"{j}×{i}={i*j}", end="\t")print()  # 换行
    

    📌 内层循环控制列,外层控制行;\t 表示制表符对齐,print() 换行

🧪 今日练习任务

  1. 使用 while 循环打印 1 到 10 的平方

    i = 1
    while i <= 10:print(f"{i}的平方是:{i * i}")i += 1	
    

    输出结果为:

    1的平方是:1
    2的平方是:4
    3的平方是:9
    4的平方是:16
    5的平方是:25
    6的平方是:36
    7的平方是:49
    8的平方是:64
    9的平方是:81
    10的平方是:100
    
  2. 计算 1~100 中所有偶数的和(for + if)

    total = 0
    for i in range(1, 101):if(i%2 == 0):total += i
    print("1~100 中所有偶数的总和是:", total)
    

    输出结果是:

    1~100 中所有偶数的总和是: 2550
    

今日总结

  1. while 和 for 各适合什么场景?

    对比项while 循环for 循环
    使用场景条件未知,直到某个条件成立才停止已知循环次数或需要遍历一个可迭代对象时使用
    循环条件控制手动控制变量、判断条件和更新自动迭代,无需手动更新
    可读性条件驱动,适合处理“无限循环”类逻辑简洁明了,适合遍历范围、列表、字符串等结构

    🔸 示例:

    # while:直到用户输入“exit”才退出
    command = ""
    while command != "exit":command = input("请输入指令(exit退出):")print("你输入了:", command)# for:打印1~10
    for i in range(1, 11):print(i)
    
  2. range() 的三种参数用法?
    range() 用于生成整数序列,是 for 循环中最常用的函数之一:

    range([start], stop[, step])
    
    用法说明示例结果
    range(stop)从 0 开始到 stop-1range(5)0 1 2 3 4
    range(start, stop)从 start 到 stop-1range(2, 6)2 3 4 5
    range(start, stop, step)指定步长range(1, 10, 2)1 3 5 7 9

    🔸 示例:

    for i in range(5):print(i, end=" ")  # 输出:0 1 2 3 4
    
  3. 循环体内 print() 如何控制换行/不换行?
    默认情况下,print() 输出后会自动换行。
    要取消自动换行,可以设置 end=“” 或指定分隔符。
    🔸 示例:

    # 默认换行
    print("A")
    print("B")
    # 输出:
    # A
    # B# 不换行输出
    print("A", end=" ")
    print("B", end=" ")
    # 输出:A B
    

    常见用法:输出九九乘法表时让一行内容横向排列:

    for i in range(1, 4):for j in range(1, 4):print(f"{j}×{i}={j*i}", end="\t")print()  # 换行
    
  4. 如何使用嵌套循环解决二维结构的问题?

    嵌套循环常用于:

    • 表格输出(如九九乘法表)
    • 遍历二维数组或矩阵
    • 多维坐标(如笛卡尔积)

    🔸 九九乘法表示例(行×列):

    for i in range(1, 10):           # 外层控制行for j in range(1, i + 1):    # 内层控制列print(f"{j}×{i}={i*j}", end="\t")print()  # 每一行结束后换行
    

    📌 理解方式:

    • 外层循环每次开始都代表新的一行
    • 内层循环表示一行中的多个元素(列)
http://www.lryc.cn/news/2385804.html

相关文章:

  • Linux虚拟文件系统(2)
  • 【数据结构】栈和队列(上)
  • 科技赋能·长效治理|无忧树建筑修缮渗漏水长效治理交流会圆满举行!
  • 【闲聊篇】java好丰富!
  • STL中list的模拟
  • 6.3.2图的深度优先遍历
  • 畅游Diffusion数字人(30):情绪化数字人视频生成
  • UE5 Va Res发送请求、处理请求、json使用
  • 关于flutter中Scaffold.of(context).openEndDrawer();不生效问题
  • 【C++】深入理解C++中的函数与运算符重载
  • 【读代码】BAGEL:统一多模态理解与生成的模型
  • 隧道自动化监测解决方案
  • 如何通过EventChannel实现Flutter与原生平台的双向通信?
  • 游戏引擎学习第307天:排序组可视化
  • java接口自动化初识
  • 工作流引擎-01-Activiti 是领先的轻量级、以 Java 为中心的开源 BPMN 引擎,支持现实世界的流程自动化需求
  • 时序数据库IoTDB的分片与负载均衡策略深入解析
  • NVM安装使用及问题解决
  • C++学习之STL学习:string类使用
  • 基于 STC89C52 的养殖场智能温控系统设计与实现
  • redis哨兵服务
  • 5月24日day35打卡
  • 嵌入式<style>设计模式
  • Kotlin 中该如何安全地处理可空类型?
  • 基于大模型预测的视神经脊髓炎技术方案
  • 使用防火墙禁止程序联网(这里禁止vscode)
  • Linux(7)——进程(概念篇)
  • 前端流行框架Vue3教程:24.动态组件
  • Unity3D仿星露谷物语开发48之显示树桩效果
  • [Datagear] 实现按月颗粒度选择日期的方案