Python学习打卡:day04
day4
笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了
目录
- day4
- 28、while 循环的嵌套应用
- 29、while 循环案例 — 九九乘法表
- 补充知识
- 示例:九九乘法表
- 30、for 循环基本语法
- while 和 for 循环对比
- for 循环
- 示例
- 注意点
- 31、for 循环案例—数一数有几个a
- 32、range 语句
- 33、for 循环临时变量作用域
- 34、for 循环的嵌套使用
- 35、for 循环打印九九乘法表
- 36、continue 和 break
- continue
- break
- 37、循环综合案例:发工资
28、while 循环的嵌套应用
基本语法格式:

注意事项:
- 同判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进。
- 基于空格缩进来决定层次关系
- 注意条件的设置,避免出现无限循环(除非真的需要无限循环)
示例程序:
"""
演示 while 循环的嵌套使用
"""# 外层:表白 100 天的控制
# 内层:每天的表白都送 10 只玫瑰花的控制i = 1
while i <= 100:print(f"今天是第 {i} 天,准备表白......")# 内层循环的控制变量j = 1while j <= 10:print(f"送给小美第 {j} 只玫瑰花")j += 1print("小美,我喜欢你")i += 1print(f"坚持到第 {i-1} 天,表白成功。")
29、while 循环案例 — 九九乘法表
补充知识
-
print 输出不换行
print("hello", end='') print("hello", end='') -
制表符
\tprint("hello\tworld") print("itheima\tbest")
示例:九九乘法表
i = 1
while i <= 9:j = 1while j <= i:print(f"{i}*{j}={i*j}\t", end='')j += 1print()i += 1
输出结果:

30、for 循环基本语法
while 和 for 循环对比
- while循环的循环条件是自定义的,自行控制循环条件
- for循环是一种”轮询”机制,是对一批内容进行”逐个处理”
for 循环

基本语法格式:

从待处理数据集中:逐个取出数据,赋值给临时变量。
示例
"""
演示 for 循环的基础语法
"""
name = "itheima"
for x in name:# 将 name 的内容,挨个取出赋予 x 临时变量# 就可以在循环体内对 x 进行处理print(x)
for循环是将字符串的内容:依次取出,所以,for循环也被称之为:遍历循环
理论上讲,Python的for循环无法构建无限循环(被处理的数据集不可能无限大)
注意点
for循环的注意点:
- 无法定义循环条件,只能被动取出数据处理;
- 要注意,循环内的语句,需要有空格缩进。
31、for 循环案例—数一数有几个a

name = "itheima is a brand of itcast"
count = 0
for x in name:if(x == 'a'):count += 1
print(f"itheima is a brand of itcast 中共含有:{count}个字母a")
32、range 语句

语法中的:待处理数据集,严格来说,称之为:可迭代类型
可迭代类型指,其内容可以一个个依次取出的一种类型,包括:字符串、列表、元组等。
其中,可迭代类型可以是 range。
1、语法1:range(num)
获取一个从0开始,到num结束的数字序列(不含num本身),如range(5)取得的数据是:[0, 1, 2, 3, 4];
2、语法2:range(num1, num2)
获得一个从num1开始,到num2结束的数字序列(不含num2本身),如:range(5, 10) 取得的数据是:[5, 6, 7, 8, 9];
3、语法3:range(num1, num2, step)
获得一个从 num1 开始,到 num2 结束的数字序列(不含 num2 本身),数字之间的步长,以 step 为准( step 默认为1),如,range(5, 10, 2)取得的数据是:[5, 7, 9]。
示例:
"""
演示 Python 中的 range() 语句的基本使用
"""# range 语法1:range(num)
for x in range(10):print(x)# range 语法2:range(num1, num2)
for x in range(5, 10):# 从 5 开始,到 10 结束(不包含 10 本身)的一个数字序列print(x)# range 语法3:range(num1, num2, step)
for x in range(5, 10, 2):# 从 5 开始,到 10 结束(不包含10本身)的一个数字序列,数字之间的间隔是2print(x)
练习:

示例程序:
count = 0
num = int(input("请输入一个数:"))
for x in range(1, num):if(x % 2 == 0):count += 1
print(f"1到{num}范围内,共有{count}个偶数")
33、for 循环临时变量作用域
如果在 for 循环外部访问临时变量:
- 实际上是可以访问到的;
- 在编程规范上,是不允许、不建议这么做的。
如果实在需要在循环外访问循环内的临时变量,可以在循环外预先定义。
34、for 循环的嵌套使用
基本语法格式:

示例:
"""
演示 for 循环的嵌套使用
"""
# 坚持表白 100 天,每天都送 10 朵花
for i in range(1, 101):print(f"今天是向小美表白的第{i}天,加油坚持。")# 内层循环for j in range(1, 11):print(f"给小美送的第{j}朵玫瑰花")print("小美我喜欢你")
print(f"第{i}天,表白成功")
35、for 循环打印九九乘法表
for i in range(1, 10):for j in range(1, i+1):print(f"{i}*{j}={i*j}\t", end='')print()
36、continue 和 break
continue
continue关键字用于:中断本次循环,直接进入下一次循环
continue可以用于: for循环和while循环,效果一致
# 演示循环中断语句 continue
for i in range(1, 6):print("语句1")continueprint("语句2")
continue在循环中的嵌套使用
# 演示 continue 的嵌套应用
for i in range(1, 6):print("语句1")for j in range(1, 6):print("语句2")continueprint("语句3")print("语句4")
break
break 关键字同样只可以控制:它所在的循环永久中断。
# 演示循环中断语句 break
for i in range(1, 101):print("语句1")breakprint("语句2")
print("语句3")
break 在循环中的嵌套使用
# 演示 break 的嵌套应用
for i in range(1, 6):print("语句1")for j in range(1, 6):print("语句2")breakprint("语句3")print("语句4")
37、循环综合案例:发工资

示例:
import random
num = random.randint(1, 10)
sum = 10000
for i in range(1, 21):salary = 1000;num = random.randint(1, 10)if(num < 5):print(f"员工{i},绩效分{num},低于5,不发工资,下一位")continueif sum >= 1000:sum -= 1000print(f"员工{i}发放工资1000元,公司账户余额:{sum}")else:print(f"余额不足,当前余额:{sum}元,不足以发工资,下个月再来")break
相关文章:
Python学习打卡:day04
day4 笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了 目录 day428、while 循环的嵌套应用29、while 循环案例 — 九九乘法表补充知识示例:九九乘法表 30、for 循环基本语法while 和 for 循环对比f…...
gitlab问题记录
You wont be able to pull or push project code via SSH until you add an SSH key to you 解决方案:https://blog.csdn.net/gufenchen/article/details/95663284...
OpenCV练习(1)签名修复
1.目的 在学校的学习过程中,需要递交许多材料,且每份材料上都需要对应负责人签名,有时候找别人要签名,然后自己粘贴的话,会出现签名模糊,背景不是纯白透明。为此以word中的“颜色校正”功能为参照…...
软设之系统测试之测试的基本概念及分类
测试的基本概念 尽早,不断地进行测试 程序员避免测试自己设计的程序 既要选择有效,合理的数据,也要选择无效,不合理的数据 修改后应进行回归测试 尚未发现的错误数量与该程序已发现错误其他成正比。 动态测试 黑盒测试(测试…...
Python学习打卡:day06
day6 笔记来源于:黑马程序员python教程,8天python从入门到精通,学python看这套就够了 目录 day648、函数综合案例49、数据容器入门50、列表的定义语法51、列表的下标索引1、列表的下标(索引)2、列表的下标(…...
支付宝 沙盒demo使用
简介:支付宝沙箱环境是一个为开发者提供的模拟测试环境,用于在应用上线前进行接口功能开发和联调。在这个环境中,开发者可以模拟开放接口,进行开发调试工作,以确保应用上线后能顺利运行。 1. 配置沙盒 1. 1 沙箱控制…...
ConcurrentHashMap如何保证线程安全?
ConcurrentHashMap 是 HashMap 的多线程版本,HashMap 在并发操作时会有各种问题,比如死循环问题、数据覆盖等问题。而这些问题,只要使用 ConcurrentHashMap 就可以完美解决了,那问题来了,ConcurrentHashMap 是如何保证…...
spring属性注入的不细心错误
属性注入问题 个人博客:www.zgtsky.top 同个的对象,在一个类中注入成功,在另一个类中注入为null 问题:在检测各个需要的类上已经打上注解后,出现了在一个类A1中注入B属性成功了,但在另一个类A2中注入B属性却失败了。…...
JVM 根可达算法
Java中的垃圾 Java中"垃圾"通常指的是不再被程序使用和引用的对象,具体表现在没有被栈、JNI指针和永久代对象所引用的对象。Java作为一种面向对象的编程语言,它使用自动内存管理机制,其中垃圾收集器负责检测和回收不再被程序引用的…...
Kafka基础架构与核心概念?有哪些应用场景?
Kafka简介 Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。架构特点是分区、多副本、多生产者、多订阅者,性能特点主要是高吞吐,低时延。 Kafka主要设计…...
内网不能访问网站怎么办?
内网不能访问网站是在网络使用过程中常见的问题之一。当我们使用局域网连接时,有时候会遇到无法访问特定网站的情况。这可能是因为网络环境复杂,或者受到了某些限制。本篇文章将介绍一种解决内网不能访问网站问题的产品——天联组网。 天联组网是一款由…...
python-求f(x,n)
[题目描述] 输入: 输入 𝑥和 𝑛。输出: 函数值,保留两位小数。样例输入1 4.2 10 样例输出1 3.68 来源/分类(难度系数:一星) 完整代码如下: x,nmap(eval,input().split(…...
java值jsp语法笔记
1 JSP注释 1.1 显示注释 显示注释会出现在生成的HTML文档中,对用户可见。 <!-- 这是一个HTML显示注释 --> 1.2 隐式注释 隐式注释不会出现在生成的HTML文档中,对用户不可见。 <%-- 这是一个JSP隐式注释 --%> 2 JSP脚本元素 2.1 局部…...
057、PyCharm 运行代码报错:Error Please select a valid Python interpreter
当我们在PyCharm运行代码时,提示如下图错误: 那么问题通常是由于PyCharm未正确配置Python解释器引起的。 我们只需按以下步骤重新配置Python解释器即可: 打开PyCharm设置: 在菜单栏中的点击 “File” -> “Settings”…...
Java实现图书管理系统
一、引言 本篇介绍了一个简易的图书管理系统,面向管理员和普通用户分别给出了不同的菜单,实现了一些基本的图书操作功能,包括图书的增删查改、借阅、归还等 二、图书管理系统框架 图书管理系统,顾名思义,管理的是图…...
使用静态方法接受对象参数
我们先来看一个例子 public class MyInteger { private int value; // 构造函数 public MyInteger(int value) { this.value value; } // 实例方法 public boolean isEven() { return value % 2 0; } // 静态方法接受int参数 public static boolean isEvenStatic…...
cocos creator如何使用cryptojs加解密(及引入方法)
cocos creator如何使用cryptojs加解密(及引入方法) 如果想转请评论留个言并注明原博 Sclifftop 13805064305 阿浚 cocos creator如何使用cryptojs加解密(及引入方法) 步骤 获取库 1. npm install crypto-js -g,加不加…...
安装台式电脑网卡驱动
安装电脑网卡驱动 1. 概述2. 具体方法2.1 先确定主板型号2.2 详细操作步骤如下2.2.1 方法一2.2.2 方法二2.2 主流主板官网地址 结束语 1. 概述 遇到重装系统后、或者遇到网卡驱动出现问题没有网络时,当不知道怎么办时,以下的方法,可以作为一…...
JavaEE-多线程(1)
这篇文章,我们将介绍进程、线程的相关概念以及进程和线程的区别,下篇文章我们将使用Java来编写多线程的代码 进程: 进程(Process)是操作系统中资源分配的基本单位,它是一个正在运行的程序的实例。进程包括…...
【计算机视觉】人脸算法之图像处理基础知识(五)
图像的几何变换 3.图像的旋转 图像的旋转就是让图像按照某一点旋转到指定的角度。需要确定3个参数:图像的旋转中心、旋转角度和缩放因子。在openv中通过getRotationMatrix2D()函数来实现图像的旋转。 import cv2 import numpy as npimgpath "images/img1.j…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
云原生安全实战:API网关Envoy的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关 作为微服务架构的统一入口,负责路由转发、安全控制、流量管理等核心功能。 2. Envoy 由Lyft开源的高性能云原生…...
渗透实战PortSwigger Labs指南:自定义标签XSS和SVG XSS利用
阻止除自定义标签之外的所有标签 先输入一些标签测试,说是全部标签都被禁了 除了自定义的 自定义<my-tag onmouseoveralert(xss)> <my-tag idx onfocusalert(document.cookie) tabindex1> onfocus 当元素获得焦点时(如通过点击或键盘导航&…...
如何把工业通信协议转换成http websocket
1.现状 工业通信协议多数工作在边缘设备上,比如:PLC、IOT盒子等。上层业务系统需要根据不同的工业协议做对应开发,当设备上用的是modbus从站时,采集设备数据需要开发modbus主站;当设备上用的是西门子PN协议时…...
接口 RESTful 中的超媒体:REST 架构的灵魂驱动
在 RESTful 架构中,** 超媒体(Hypermedia)** 是一个核心概念,它体现了 REST 的 “表述性状态转移(Representational State Transfer)” 的本质,也是区分 “真 RESTful API” 与 “伪 RESTful AP…...
ffmpeg(三):处理原始数据命令
FFmpeg 可以直接处理原始音频和视频数据(Raw PCM、YUV 等),常见场景包括: 将原始 YUV 图像编码为 H.264 视频将 PCM 音频编码为 AAC 或 MP3对原始音视频数据进行封装(如封装为 MP4、TS) 处理原始 YUV 视频…...
