【在校课堂笔记】Python 第5节课 总结

ops/2025/3/18 5:37:19/

- 第 81 篇 -
Date: 2025 - 03 - 17
Author: 郑龙浩/仟濹
【Python 在校课堂笔记

文章目录

  • 南山 - Python 第5节课
  • 一 range 的各种使用
  • 二 上次作业
  • 三 斐波那契数列
    • 代码1 - 不优化
    • 代码2 - 优化版
  • 四 打印图形
  • 五 九九乘法表
  • 六 百钱百鸡
  • 七 作业
    • 方法 1
    • 方法 2
    • 方法 3
    • 打印结果

南山 - Python 第5节课

2025-03-17 上课

一 range 的各种使用

  • range(n): n为整数,范围: 0 ~ n-1,步长: +1
  • range(a, n): a, n为整数范围: a ~ n - 1, 步长 + 1
  • range(a, n, b): a, n为整数范围: a ~ n - 1, 步长 +b(可步长以为负数)
python">print(list(range(5)))
print(list(range(1, 5)))
print(list(range(1, 5, 2)))
print(list(range(5, 1, -1)))
# 打印结果
[0, 1, 2, 3, 4]
[1, 2, 3, 4]
[1, 3]
[5, 4, 3, 2]

二 上次作业

python">sum = 0
for i in range(1, 12, 2):sum += i
print(f"1+3+5+7+9+11的答案: {sum}")

三 斐波那契数列

知识点:range() 的应用以及 for 的使用

代码1 - 不优化

python">a, b = 1, 1
print(a, b, end = ' ')
for i in range(8):c = a + ba, b = b, cprint(c, end = ' ')
# 打印结果
1 1 2 3 5 8 13 21 34 55 

代码2 - 优化版

python">a, b = 1, 1
for i in range(8:print(a, end = ' ')a, b = b, a + b
# 打印结果
1 1 2 3 5 8 13 21

四 打印图形

知识点:嵌套 for 循环,range() 的使用,i j 分别控制行 列

python">for i in range(5): # 外层循环for j in range(5): # 内层循环print('*', end = ' ')print()# 打印结果 
* * * * * 
* * * * * 
* * * * * 
* * * * * 
* * * * * 
python">for i in range(5):for j in range(i):print('*', end = ' ')print()
# 打印结果
* 
* * 
* * * 
* * * * 
python">for i in range(5):for j in range(5 - i, 0, -1):print('*', end = ' ')print()
# 打印结果
* * * * * 
* * * * 
* * * 
* * 
* 

五 九九乘法表

知识点:嵌套 for 循环,控制打印宽度,range() 的使用,i 与 j 控制行列的能力

python">for i in range(1, 10):for j in range(1, i + 1):print(f'{j} × {i} = {j * i:<3}', end=' ')print()
# 打印结果
1 × 1 = 1   
1 × 2 = 2   2 × 2 = 4   
1 × 3 = 3   2 × 3 = 6   3 × 3 = 9   
1 × 4 = 4   2 × 4 = 8   3 × 4 = 12  4 × 4 = 16  
1 × 5 = 5   2 × 5 = 10  3 × 5 = 15  4 × 5 = 20  5 × 5 = 25  
1 × 6 = 6   2 × 6 = 12  3 × 6 = 18  4 × 6 = 24  5 × 6 = 30  6 × 6 = 36  
1 × 7 = 7   2 × 7 = 14  3 × 7 = 21  4 × 7 = 28  5 × 7 = 35  6 × 7 = 42  7 × 7 = 49  
1 × 8 = 8   2 × 8 = 16  3 × 8 = 24  4 × 8 = 32  5 × 8 = 40  6 × 8 = 48  7 × 8 = 56  8 × 8 = 64  
1 × 9 = 9   2 × 9 = 18  3 × 9 = 27  4 × 9 = 36  5 × 9 = 45  6 × 9 = 54  7 × 9 = 63  8 × 9 = 72  9 × 9 = 81  

六 百钱百鸡

知识点:嵌套 for 循环,range() 的应用,化应用题为数学和代码

python">for i in range(1, 21):for j in range(1, 34):k = 100 - i - jif 5 * i + 3 * j + (1 / 3) * k == 100:print(i, j, k)
# 打印结果
8 11 81
12 4 84

七 作业

题目

编程输出,1000之内与4相关的数(与4相关的含义:4的倍数或者个位为4,十位有4或者百位有4)

方法 1

python"># 方法1
num = 0 # 与 4 相关的数的个数
for i in range(4, 1000):# i // 100 --> 截掉十位和个位, 只取百位# i // 10 --> 截掉个位,只取百位和十位  i // 10 % 10 --> 已经截掉了个位,只保留了百位和十位,然后 % 10 取出来的就是十位# i % 10 --> 只取个位if i // 100 == 4 or i // 10 % 10 == 4 or i % 10 == 4 or i % 4 == 0: # 判断条件 百位,十位,个位, 倍数print(f'{i:<3}', end = ' ')num += 1if num % 30 == 0: # 打印太多太长了,所以一行30个print()

方法 2

python"># 方法2
# 提前将计算结果存下来,以免if太长,太乱
num = 0 # 与 4 相关的数的个数
for i in range(4, 1000):# i // 100 --> 截掉十位和个位, 只取百位a = i // 100 == 4# i // 10 --> 截掉个位,只取百位和十位  i // 10 % 10 --> 已经截掉了个位,只保留了百位和十位,然后 % 10 取出来的就是十位b = i // 10 % 10 == 4# i % 10 --> 只取个位c = i % 10 == 4# 判断 4 的倍数d = i % 4 == 0if a or b  or c or d: # 判断条件 百位,十位,个位, 倍数print(f'{i:<3}', end = ' ')num += 1if num % 30 == 0: # 打印太多太长了,所以一行30个print()

方法 3

python"># 方法3
num = 0 # 与 4 相关的数的个数
for i in range(4, 1000):# str(i).count('4') 先将 i 变为字符串,然后判断字符串中是否存在 数字字符'4'if i % 4 == 0 or str(i).count('4') >= 1: # 判断条件print(i, end = ' ')num += 1if num % 30 == 0: # 打印太多太长了,所以一行30个print()

打印结果

python">4   8   12  14  16  20  24  28  32  34  36  40  41  42  43  44  45  46  47  48  49  52  54  56  60  64  68  72  74  76  
80  84  88  92  94  96  100 104 108 112 114 116 120 124 128 132 134 136 140 141 142 143 144 145 146 147 148 149 152 154 
156 160 164 168 172 174 176 180 184 188 192 194 196 200 204 208 212 214 216 220 224 228 232 234 236 240 241 242 243 244 
245 246 247 248 249 252 254 256 260 264 268 272 274 276 280 284 288 292 294 296 300 304 308 312 314 316 320 324 328 332 
334 336 340 341 342 343 344 345 346 347 348 349 352 354 356 360 364 368 372 374 376 380 384 388 392 394 396 400 401 402 
403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 
433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 
463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 
493 494 495 496 497 498 499 500 504 508 512 514 516 520 524 528 532 534 536 540 541 542 543 544 545 546 547 548 549 552 
554 556 560 564 568 572 574 576 580 584 588 592 594 596 600 604 608 612 614 616 620 624 628 632 634 636 640 641 642 643 
644 645 646 647 648 649 652 654 656 660 664 668 672 674 676 680 684 688 692 694 696 700 704 708 712 714 716 720 724 728 
732 734 736 740 741 742 743 744 745 746 747 748 749 752 754 756 760 764 768 772 774 776 780 784 788 792 794 796 800 804 
808 812 814 816 820 824 828 832 834 836 840 841 842 843 844 845 846 847 848 849 852 854 856 860 864 868 872 874 876 880 
884 888 892 894 896 900 904 908 912 914 916 920 924 928 932 934 936 940 941 942 943 944 945 946 947 948 949 952 954 956 
960 964 968 972 974 976 980 984 988 992 994 996
文章来源:https://blog.csdn.net/m0_60605989/article/details/146327542
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/ops/166688.html

相关文章

Webpack 前端性能优化全攻略

文章目录 1. 性能优化全景图1.1 优化维度概览1.2 优化效果指标 2. 构建速度优化2.1 缓存策略2.2 并行处理2.3 减少构建范围 3. 输出质量优化3.1 代码分割3.2 Tree Shaking3.3 压缩优化 4. 运行时性能优化4.1 懒加载4.2 预加载4.3 资源优化 5. 高级优化策略5.1 持久化缓存5.2 模…

基于python的图书馆书目推荐数据分析与可视化-django+spider+vue

开发语言&#xff1a;Python框架&#xff1a;django spiderPython版本&#xff1a;python3.8数据库&#xff1a;mysql 5.7数据库工具&#xff1a;Navicat11开发软件&#xff1a;PyCharm 系统展示 系统登录 管理员功能界面 用户管理 小说信息管理 图书借阅管理 系统管理 看板…

解释 TypeScript 中的枚举(enum),如何使用枚举定义一组常量?

枚举&#xff08;Enum&#xff09;​ 是 TypeScript 中用于定义一组具名常量的核心类型&#xff0c;通过语义化的命名提升代码可读性&#xff0c;同时利用类型检查减少低级错误。 以下从定义方式、使用建议、注意事项三方面深入解析。 一、枚举的定义方式 1. 数字枚举 特性&…

【Android Studio】解决遇到的一些问题

目录 前言 一、Invalid Gradle JDK configuration found. Open Gradle Settings Change JDK location 报错场景 解决方法 二、adb 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。 报错场景 解决方法 前言 Android Studio的安装过程&#xff0c;可以参…

网络安全常识科普(百问百答)

汪乙己一到店&#xff0c;所有喝酒的人便都看着他笑&#xff0c;有的叫道&#xff0c;“汪乙己&#xff0c;你又监控员工隐私了&#xff01;”他不回答&#xff0c;对柜里说&#xff0c;“来两个fofa。”便排出三个比特币。他们又故意的高声嚷道&#xff0c;“你一定又在电报群…

DeepSeek-R1大模型微调技术深度解析:架构、方法与应用全解析

1. DeepSeek-R1大模型架构设计与技术特性 1.1 架构设计 DeepSeek-R1作为超大规模语言模型,其核心架构设计包含以下创新: 专家混合架构(MoE) 采用6710亿参数的混合专家架构(MoE),每个推理过程仅激活370亿参数,实现计算效率与资源利用率的突破性提升。 Transformer框架…

用旧的手机搭建 MQTT Broker-Node_red

MQTT Broker搭建 在Android上搭建MQTT所需工具: termux 通过网盘分享的文件:termux-app_v0.118.1+github-debug_armeabi-v7a.apk 链接: https://pan.baidu.com/s/1Iii2szXAc02cKVGdP1EuzQ?pwd=fqsc 提取码: fqsc 在 Termux 中使用 MQTT(Message Queuing Telemetry Trans…

嵌入式/C++笔试面试指南(前言)

在数字化转型与智能硬件快速发展的时代&#xff0c;嵌入式系统与 C 语言作为支撑物联网、人工智能、工业控制等领域的核心技术&#xff0c;正面临着前所未有的人才需求。无论是初入职场的应届生&#xff0c;还是寻求技术突破的从业者&#xff0c;掌握嵌入式开发与 C 编程的核心…