【Python学习篇】Python——循环语句(六)

简介: 【Python学习篇】Python——循环语句(六)

文章介绍:

📚本篇文章将深入剖析Python基础入门学习的精髓与奥秘,与您一同分享相关知识!🎉🎉🎉

循环普遍存在于日常生活中,同样,在程序中,循环功能也是至关重要的基础功能。

若您觉得文章尚可入目,期待您能慷慨地送上点赞、收藏与分享的三连支持!您的每一份鼓励,都是我创作路上源源不断的动力。让我们携手并进,共同奔跑,期待在顶峰相见的那一天,共庆辉煌!🚀🚀🚀

🙏衷心感谢大家的点赞👍、收藏⭐和评论✍️,您的支持是我前进的动力!

一、为什么学习循环语句?

循环在程序中同判断一样,也是广泛存在的,是非常多功能实现的基础:

二、while循环的基础语法

2.1 循环

小美心软,只要表白100次,就会成功

使用循环语句简单搞定

2.2 while循环注意点

       1. while的条件需得到布尔类型,True表示继续循环,False表示结束循环。

       2. 需要设置循环终止的条件,如i += 1配合 i < 100,就能确保100次后停止,否则将无限循环。

       3. 空格缩进和if判断一样,都需要设置。

三、while循环的基础案例

猜数字案例

       设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数。

       无限次机会,直到猜中为止

       每一次猜不中,会提示大了或小了

       猜完数字后,提示猜了几次

import random
 
# 生成一个1到100之间的随机整数
target = random.randint(1, 100)
 
# 初始化猜测次数
guess_count = 0
 
# 无限循环,直到猜中数字为止
while True:
    # 用户输入一个数字
    guess = int(input("Guess a number between 1 and 100: "))
 
    # 猜测次数增加
    guess_count += 1
 
    # 判断用户的猜测
    if guess < target:
        print("Too low.")
    elif guess > target:
        print("Too high.")
    else:
        print(f"Congratulations! You've guessed it right in {guess_count} tries.")
        break  # 猜中后跳出循环

四、while循环的嵌套应用

4.1 循环嵌套

4.2  while循环的嵌套-注意点

       同判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进。

               基于空格缩进来决定层次关系

       注意条件的设置,避免出现无限循环(除非真的需要无限循环)

4.3 补充知识-print输出不换行

默认print语句输出内容会自动换行,如下图:

在即将完成的案例中,我们需要使用print语句,输出不换行的功能,非常简单,实现方式如下:

如图,在print语句中,加上 end=’’ 即可输出不换行了

4.4 补充知识- 制表符\t

在字符串中,有一个特殊符号:\t,效果等同于在键盘上按下:tab键。

它可以让我们的多行字符串进行对齐。

比如:

五、while循环的嵌套案例

       通过while循环,输出如下九九乘法表内容

提示:

       •2层循环,外层控制行,内层控制列。

       •外层循环和内存循环的累加数字变量,用以辅助输出乘法表的数值。

i = 1  # 初始化行标记
while i <= 9:
    j = 1  # 初始化列标记
    while j <= i:
        print(f"{j} * {i} = {i * j}", end='\t')  # 输出乘法表的一项
        j += 1  # 列标记递增
    print()  # 每一行结束后换行
    i += 1  # 行标记递增

六、for循环的基础语法

6.1 for循环

除了while循环语句外,Python同样提供了for循环语句。

两者能完成的功能基本差不多,但仍有一些区别:

       •while循环的循环条件是自定义的,自行控制循环条件

       •for循环是一种”轮询”机制,是对一批内容进行”逐个处理“

6.2 遍历字符串

运行结果如下:

6.3 for循环注意点

同while循环不同,for循环是无法定义循环条件的。

只能从被处理的数据集中,依次取出内容进行处理。

所以,理论上讲,Python的for循环无法构建无限循环(被处理的数据集不可能无限大)

6.4 range语句

       语法中的:待处理数据集,严格来说,称之为:可迭代类型

       可迭代类型指,其内容可以一个个依次取出的一种类型,包括:

       •字符串

       •列表

       •元组

       •等

       目前我们只学习了字符串类型,其余类型在后续会详细学习它们。

       for循环语句,本质上是遍历:可迭代对象。

       尽管除字符串外,其它可迭代类型目前没学习到,但不妨碍我们通过学习range语句,获得一个简单的数字序列(可迭代类型的一种)。

语法1:

       

       获取一个从0开始,到num结束的数字序列(不含num本身)

       如range(5)取得的数据是:[0, 1, 2, 3, 4]

语法2:

       

       获得一个从num1开始,到num2结束的数字序列(不含num2本身)

       如,range(5, 10)取得的数据是:[5, 6, 7, 8, 9]

语法3:

       

       获得一个从num1开始,到num2结束的数字序列(不含num2本身)

       数字之间的步长,以step为准(step默认为1)

       如,range(5, 10, 2)取得的数据是:[5, 7, 9]

6.5 for循环遍历range序列

运行结果如下:

6.6 for循环的变量作用域

回看for循环的语法,我们会发现,将从数据集(序列)中取出的数据赋值给:临时变量

为什么是临时的呢?

临时变量,在编程规范上,作用范围(作用域),只限定在for循环内部

如果在for循环外部访问临时变量:

       •实际上是可以访问到的        

       •在编程规范上,是不允许、不建议这么做的

如果实在需要在循环外访问循环内的临时变量,可以在循环外预先定义

每一次循环的时候,都会将取出的值赋予i变量。

       •由于i变量是在循环之前(外)定义的

       •在循环外访问i变量是合理的、允许的

七、for循环的嵌套应用

7.1 循环嵌套

同样以向小美表白的案例为例

       •坚持表白100天、

       •每天送花10束

7.2 for循环的嵌套注意点

我们目前学习了2个循环,while循环和for循环。

这两类循环语句是可以相互嵌套的,如下,小美表白的案例可以改为:

八、循环中断 : break和continue

8.1 continue

       让我们通过代码来模拟一下追求小美的过程。(以for循环为例,while循环效果一样)

通过input输入语句,来决定今天小美的心情(0表示好心情,1表示坏心情)

8.2  continue在嵌套循环中的应用

continue关键字只可以控制:它所在的循环临时中断

8.3 break

break关键字用于:直接结束所在循环

break可以用于:    for循环和while循环,效果一致

让我们通过代码来模拟一下追求小美的过程。(以for循环为例,while循环效果一样)

通过input输入语句,来决定今天小美的心情(0表示好心情,1表示坏心情)

8.4 break在嵌套循环中的应用

break关键字同样只可以控制:它所在的循环永久中断

📝大佬觉得本文有所裨益,不妨轻点一下👍给予鼓励吧!

❤️❤️❤️本人虽努力,但能力尚浅,若有不足之处,恳请各位大佬不吝赐教,您的批评指正将是我进步的动力!😊😊😊

💖💖💖若您认为此篇文章对您有所帮助,烦请点赞👍并收藏🌟,您的支持是我前行的最大动力!

🚀🚀🚀任务在默默中完成,价值在悄然间提升。让我们携手共进,一起加油,迎接更美好的未来!🌈🌈🌈

目录
相关文章
|
18天前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
9天前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
20天前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
24天前
|
存储 程序员 Python
Python学习的自我理解和想法(2)
今日学习Python第二天,重点掌握字符串操作。内容涵盖字符串介绍、切片、长度统计、子串计数、大小写转换及查找位置等。通过B站黑马程序员课程跟随老师实践,非原创代码,旨在巩固基础知识与技能。
|
23天前
|
程序员 Python
Python学习的自我理解和想法(3)
这是学习Python第三天的内容总结,主要围绕字符串操作展开,包括字符串的提取、分割、合并、替换、判断、编码及格式化输出等,通过B站黑马程序员课程跟随老师实践,非原创代码。
|
20天前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。
|
18天前
|
存储 安全 索引
Python学习的自我理解和想法(8)
这是我在B站千锋教育学习Python的第8天,主要内容是元组。元组是一种不可变的序列数据类型,用于存储一组有序的元素。本文介绍了元组的基本操作,包括创建、访问、合并、切片、遍历等,并总结了元组的主要特点,如不可变性、有序性和可作为字典的键。由于开学时间紧张,内容较为简略,望见谅。
|
20天前
|
存储 索引 Python
Python学习的自我理解和想法(4)
今天是学习Python的第四天,主要学习了列表。列表是一种可变序列类型,可以存储任意类型的元素,支持索引和切片操作,并且有丰富的内置方法。主要内容包括列表的入门、关键要点、遍历、合并、判断元素是否存在、切片、添加和删除元素等。通过这些知识点,可以更好地理解和应用列表这一强大的数据结构。
|
20天前
|
索引 Python
Python学习的自我理解和想法(5)
这是我在B站千锋教育学习Python的第五天笔记,主要内容包括列表的操作,如排序(`sort()`、``sorted()``)、翻转(`reverse()`)、获取长度(`len()`)、最大最小值(`max()`、``min()``)、索引(`index()`)、嵌套列表和列表生成(`range`、列表生成式)。通过这些操作,可以更高效地处理数据。希望对大家有所帮助!
|
26天前
|
安全 程序员 Python
Python学习的自我理解和想法(1)
本篇博客记录了作者跟随B站“黑马程序员”课程学习Python的第一天心得,涵盖了`print()`、`input()`、`if...else`语句、三目运算符以及`for`和`while`循环的基础知识。通过实际编写代码,作者逐步理解并掌握了这些基本概念,为后续深入学习打下了良好基础。文中还特别强调了循环语句的重要性及其应用技巧。