Python学习笔记--循环语句 for 和 while

news2025/6/17 10:11:59

目前更新中....

(一) while循环的基本语法

1.  基本格式

while 条件:

      条件满足时,做的事情1

      条件满足时,做的事情2

     …(省略)…

  • 只要条件满足,会无限循环执行
  • 条件需要布尔类型结果
    while 判断条件(condition):
        执行语句(statements)……

    练习:100的累加求和

    """
    100的累加求和
    """
    n=1
    sum=0
    while n<101:
        sum=sum+n
        n+=1
    print("请输出结果:%d"% sum)

  • (二) while循环的基础案例

import random
num=random.randint(1,100)
# 定义一个变量,记录猜测了多少次
count=0
# 通过一个布尔类型的变量,做循环是否继续的标记
flag=True
while flag:
    guess_num=int(input("键盘输入一个数"))
    count+=1
    if guess_num==num:
        print("猜对了")
        flag==False
    else:
        if guess_num>num:
            print("你猜测大了")
        else: print("你猜测小了")
    print(f"你总共猜测了{count}次")

(三) while循环的嵌套应用


 1. 基本格式:

while 条件1:

      条件1满足时,做的事情1

      条件1满足时,做的事情2

     …(省略)…

      while 条件2:

          条件2满足时,做的事情1

          条件2满足时,做的事情2

          …(省略)…
 

"""
演示while循环的嵌套使用
"""
# 外层:表白100天的控制
# 内层:每天的表白都送10朵玫瑰花的控制
i=1
while i<=100:
    print(f"今天是第{i}天,准备表白。。")

    # 内层循环
    j=1
    while j<=10:
        print(f"送给小妹第{j}朵玫瑰花")
        j+=1
    print("小美,我喜欢你")
    i+=1
    print(f"坚持到第{i-1}天,表白成功")#这里为i-1,是因为假设最后一次成功,到最后whil循环到101才不满足循环,但是表白实在第i天也就是100的时候

(四) while循环的嵌套应用补充:

补充:

1. print输出不换行

print("Hello",end=' ')
print("World!",end='')


 

 2. 制表符/t

print("学号\t姓名\t语文\t数学\t英语")
print("2022001\t小王\t99\t\t88\t\t0")
print("2022002\t小周\t92\t\t45\t\t93")
print("2022008\t小黄\t77\t\t82\t\t100")

练习

"""
演示使用while的嵌套循环
打印输出九九乘法表
"""
#定义一个外层循环
i=1 # 行
while i<=9:
# 定义一个内层循环
    j=1 # 列
    while j<=i:
        print(f"{j}*{i}={j*i}\t",end='')
        j=j+1
    i+=1
    print();#print()空内容,就是输出一个换行

(五) for循环的基础语法


1. 基础语法

for循环就是将“待办事项”逐个完成的循环机制

while循环的循环条件是自定义,自行控制循环条件
for循环是一种“轮询”机制,是对一批内容进行逐个处理
!for循环无法定义循环条件,只能从被处理的数据集中,依次取出内容进行处理

1) 基本格式:

for 临时变量 in 待处理的数据集:

            循环满足条件时执行的语句

 练习:

"""
演示for循环的基础语法
"""
name="itheima"
for x in name:
    # 将name的内容,挨个去除赋予x临时变量
    # 就可以在循环以内对x进行处理
    print(x)

 练习

name="itheima is a brand of itcast"
count=0
for x in name:
    if x=='a':
        count+=1
print(f"总共有{count}个字母")

(六)for循环的嵌套应用


1. 基本格式:

for 临时变量 in 待处理的数据集:

            循环满足条件时执行的语句1

            循环满足条件时执行的语句2

            ……

             for 临时变量 in 待处理的数据集:

                          循环满足条件时执行的语句1

                          循环满足条件时执行的语句1       

练习:

"""
九九乘法表
"""
i=1
for i in range(1,10):#range(1,10)为1 2 3 4 5 6 7 8 9,不包括10
    j=1
    for j in range(1,i+1):
        print(f"{j}*{i}={j*i}\t",end='')
        j=j+1
    i=i+1
    print()#换行操作

扩展range() 函数

1.如果你需要遍历数字序列,可以使用内置 range() 函数。它会生成数列,例如:

for i in range(5):
...     print(i)
...
0
1
2
3
4

 2.你也可以使用 range() 指定区间的值:

for i in range(5,9) :
    print(i)
 
    
5
6
7
8

3.也可以使 range() 以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):

for i in range(0, 10, 3) :
    print(i)
 
    
0
3
6
9

4.负数:

for i in range(-10, -100, -30) :
    print(i)
 
    
-10
-40
-70
>>>

5.可以结合 range() 和 len() 函数以遍历一个序列的索引,如下所示:

a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ']
>>> for i in range(len(a)):
...     print(i, a[i])
... 
0 Google
1 Baidu
2 Runoob
3 Taobao
4 QQ
>>>

6.可以使用 range() 函数来创建一个列表:

list(range(5))
[0, 1, 2, 3, 4]
>>>

(七) 循环中断:break和continue

1. continue关键字作用:中断本次循环,直接进入下一次循环【for循环和while循环即可使用】

2. break关键字作用:所在循环永久中断【for循环和while循环即可使用】

while 中使用 break:

n = 5
while n > 0:
    n -= 1
    if n == 2:
        break
    print(n)
print('循环结束。')

while 中使用 continue:

n = 5
while n > 0:
    n -= 1
    if n == 2:
        continue
    print(n)
print('循环结束。')

 

 实例:

for letter in 'Runoob':     # 第一个实例
    if letter == 'b':
        break
    print ('当前字母为 :', letter)

var = 10                    # 第二个实例
while var > 0:
    print ('当前变量值为 :', var)
    var = var -1
    if var == 5:
        break

print ("Good bye!")

 以下实例循环字符串 Runoob,碰到字母 o 跳过输出:

for letter in 'Runoob':     # 第一个实例
   if letter == 'o':        # 字母为 o 时跳过输出
      continue
   print ('当前字母 :', letter)
 
var = 10                    # 第二个实例
while var > 0:              
   var = var -1
   if var == 5:             # 变量为 5 时跳过输出
      continue
   print ('当前变量值 :', var)
print ("Good bye!")

 

循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被 break 终止时不执行。

如下实例用于查询质数的循环例子:

for n in range(2, 10):
    for x in range(2, n):
        if n % x == 0:
            print(f"{n}等于{x}*{int(n/x)}")
            break
    else:
        # 循环中没有找到元素
        print(f"{n}是质数")

 

(八)PASS语句

Python pass是空语句,是为了保持程序结构的完整性。

pass 不做任何事情,一般用做占位语句,如下实例

for letter in 'Runoob':
    if letter == 'o':
        pass
        print ('执行 pass 块')
    print ('当前字母 :', letter)

print ("Good bye!")

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/411936.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

excel表格的导入和导出(Java+element)

本项目是前端vue3&#xff0c;后端springboot开发 需求为&#xff1a;前端导入表格&#xff0c;后端处理表格存储数据&#xff0c;点击按钮可以导出表格。 上传效果&#xff1a;前端点击上传按钮&#xff0c;会跳出选择文件框&#xff0c;选择文件&#xff0c;点击上传。 导出效…

C语言CRC-16 IBM格式校验函数

C语言CRC-16 IBM格式校验函数 CRC-16校验产生2个字节长度的数据校验码&#xff0c;通过计算得到的校验码和获得的校验码比较&#xff0c;用于验证获得的数据的正确性。基本的CRC-16校验算法实现&#xff0c;参考&#xff1a; C语言标准CRC-16校验函数。 不同厂家通过对输入数…

鸿鹄工程项目管理系统源码 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统

鸿鹄工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性&#xff0c;公司对内部工程管…

这家年销售额309亿的Tier 1,要谈一场千亿新生意

跨入2023年&#xff0c;智能汽车软件赛道更热闹了。 相较于传统汽车开发模式&#xff0c;软件属于分布式ECU工程开发的一部分&#xff0c;由一级供应商作为黑盒提供&#xff0c;软件开发成本等被认为是硬件系统成本的一部分&#xff0c;没有实现单独定价。 如今&#xff0c;“…

Redis 如何使用 RedisCluster 构建高可用集群架构?

文章目录Redis 如何使用 RedisCluster 构建高可用集群架构&#xff1f;什么是 Redis Cluster&#xff1f;哈希槽&#xff08;hash slot&#xff09;一致性保证&#xff08;consistency guarantees&#xff09;如何构建 Redis Cluster&#xff1f;配置环境构建 A&#xff0c;A1 …

int(1) 和 int(10)区别

有个表的要加个user_id字段&#xff0c;user_id字段可能很大&#xff0c; alter table xxx ADD user_id int(1)。 int(1)怕是不够用吧&#xff0c;接下来是一通解释。 我们知道在mysql中 int占4个字节&#xff0c;那么对于无符号的int&#xff0c;最大值是2^32-1 4294967295&a…

一文弄懂Python中的sort和sorted函数

1. 引言 Python中的 sort()和sorted()函数主要用于按升序或降序对数据进行排序。在本文中比较用于列表时&#xff0c;两个函数在编程和语法上的差异。 闲话少说&#xff0c;我们直接开始吧&#xff01; 2. Sort()函数基本用法 用于列表排序的sort函数的语法如下&#xff1a…

java equals和==的区别

目录一、equals1.前言2.重写equals方法二、三、equals和的区别一、equals 1.前言 **当用equals来比较两个引用数据类型时默认比较的是它们的地址值&#xff0c;比如创建两个成员变量完全相同对象A和对象B两个进行比较&#xff0c;比较的是两个对象的地址值是否相等&#xff0c…

从spring boot泄露到接管云服务器平台

0x1前言 在打野的时候意外发现了一个站点存在spring boot信息泄露&#xff0c;之前就有看到一些文章可以直接rce啥的&#xff0c;今天刚好试试。通过敏感信息发现存在accesskey泄露&#xff0c;就想直接通过解密&#xff0c;获取敏感信息&#xff0c;接管云平台。 首先说下这个…

Linux服务器如何清除dns缓存

Linux服务器如何清除dns缓存 DNS缓存是一个临时数据库&#xff0c;用于存储已解释的DNS查询信息。换句话说&#xff0c;每当你访问网站时&#xff0c;你的操作系统和网络浏览器都会保留域名和相应IP地址的记录。 这消除对远程DNS服务器重复查询&#xff0c;并允许你的操作系统…

【实验报告】实验三、图像复原

1. 实验目的 (1) 理解退化模型。 (2) 掌握常用的图像复原方法。 2. 实验内容 (1) 模拟噪声的行为和影响的能力是图像复原的核心。 (2) 空域滤波 实验一 1. 1 产生至少 2 种不同类型的噪声&#xff0c;并绘制原图像、加噪后图像及对应直方图于 一个图形窗口中[subplot(m…

用GPT-4写代码不用翻墙了?Cursor告诉你:可以~~

目录 一、介绍 二、使用方法 三、其他实例 1.正则表达式 2.自动化测试脚本 3.聊聊技术 一、介绍 Cursor主要功能是根据用户的描述写代码或者进行对话&#xff0c;对话的范围仅限技术方面。优点是不用翻墙、不需要账号。Cursor基于GPT模型&#xff0c;具体什么版本不祥&#…

ChatGPT文本框再次升级,打造出新型操作系统

在ChatGPT到来之前&#xff0c;没有谁能够预见。但是&#xff0c;它最终还是来了&#xff0c;并引起了不小的轰动&#xff0c;甚至有可能颠覆整个行业。 从某种程度上说&#xff0c;ChatGPT可能是历史上增长最快的应用程序&#xff0c;仅在两个多月就拥有了1亿多活跃用户&…

2023年4月企业内部定制课程简章

2023年4月企业内部定制课程简章 》》数据治理内训 数据管理基础 数据处理伦理 数据治理 数据架构 数据建模和设计 数据安全 数据集成和互操作 文件和内容管理 参考数据和主数据 数据仓库和商务智能 元数据管理 数据质量 大数据和数据科学 数据管理成熟度评估 数据管理组织与…

js基础之Promise(全面+手写实现)

1. 是什么 Promise是一种异步编程的解决方案&#xff0c;用于处理异步操作并返回结果。 主要作用是解决回调函数嵌套&#xff08;回调地狱&#xff09;的问题&#xff0c;使异步操作更加清晰、易于理解和维护。 2. 怎么用 Promise有三种状态&#xff1a;pending&#xff08;…

(大数据开发随笔8)Hadoop 3.3.x分布式环境部署——补充知识

索引克隆虚拟机SSH免密登录ssh简介免密登录scp命令时间同步克隆虚拟机 克隆&#xff1a;注意要分开放置三个虚拟机的位置 修改克隆机的ip地址 vi /etc/sysconfig/network-scripts/ifcfg-ens33——IPADDR重启网络 systemctl restart networkip addr 查看ip地址 修改克隆机的主…

【STM32学习】直接存储器访问——DMA

【STM32学习】直接存储器访问——DMA零、参考一、对DMA的理解二、DMA通道优先级三、DMA通道x传输数量寄存器(DMA_CNDTRx)四、DMA缓冲区设计零、参考 一个严谨的STM32串口DMA发送&接收&#xff08;1.5Mbps波特率&#xff09;机制 【组件】通用环形缓冲区模块 上述是我的参考…

ServletContext 对象

1.共享数据 ServletContext 对象 先调用对象&#xff0c;获取对象&#xff0c;往里面存数据 package com.kuang.servlet;import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.…

Pandas.read_excel详解

文章目录基础知识语法参数详解-index_col参数详解-header参数详解-usecols参数详解-dtype其他参数多表读取顺带提一句如何用pandas写数据到excel基础知识 pandas 可以读取多种的数据格式&#xff0c;针对excel来说&#xff0c;可以使用read_excel()读取数据&#xff0c;如下&a…

实现在SpringBoot项目中使用腾讯云发送短信

在一些项目中总会不可避免的要用到短信服务&#xff0c;比如发送验证码等&#xff0c;那么如何进行短信的发送呢&#xff0c;我们这就来捋一捋&#xff0c;我这里采用的是腾讯云的短信服务。其他的云服务也大致一样。 第一步、申请腾讯云的短信服务并配置基本信息 首先进入腾讯…