Python基础部分——循环

目录

While循环与break语句

while语句

break语句

for循环与continue语句

for语句

continue语句

循环嵌套

for循环嵌套

while循环嵌套

迭代器

理解迭代器

定义迭代器

复制迭代器


程序的第三大结构是循环结构,在此结构中,通过一个判断语句来循环执行一个代码块,直到判断语句为假时跳出循环。循环语句分为while循环、for循环、循环嵌套和迭代器。循环语句中有一个语句break,通过这个语句可以跳出整个循环。

以下场景便模拟了循环结构与跳出循环的现实场景:

在一个工厂的流水线上每天需要加工零件100件,且每件零件所做的加工都是一样的,也就是说流水线每天要循环做相同的工作100次,但是如果在加工时突然停电,则流水线停止对后面所有零件的加工,跳出循环。

While循环与break语句

while循环+break结构如下图所示:

while语句

while语句的基本形式为:

while 判断条件1:
    循环语句

判断条件1true时,执行循环语句,直到判断条件1为假。 例如:

count = 0
while(count <= 10):
    print("现在计数为:",count)
    count += 1

break语句

break语句的基本形式为:

while 判断条件1:
    循环语句
    判断条件2:
    break

判断条件1true时执行循环语句,若此时判断条件2true,执行break跳出while循环,若判断条件2一直为false,则执行while循环,一直到判断条件1false。 例如:

count = 0
while(count <= 10):
    print("现在计数为:",count)
    count += 1
    if(count > 5):
        break

for循环与continue语句

python中还为我们提供了一种循环结构:for循环。for循环可以遍历序列成员,直到序列中的成员全部都遍历完后才跳出循环。循环语句中有一个continue语句,这个语句的作用是跳出当前循环。

以下场景便模拟了for循环结构与跳出当前循环的现实场景:

全班同学的试卷为一个序列,老师在批阅一个班同学的试卷时,需要从第一个同学开始一个一个批阅,然后根据每个同学的具体答卷情况给出最后得分。

如果评阅到某张试卷时发现这位同学缺考,为空白卷,那么就不评阅这张试卷,直接评阅下一张。当全部同学的试卷都评阅完毕时,结束评阅,跳出循环。

for循环+continue结构如下图所示:

for语句

for语句的基本形式为:

for iteration_var in sequence:
    循环语句

依次遍历序列中的成员,执行循环语句。 例如:

list = ['python','java','c','c++']
for book in list:
print("当前书籍为:",book)

continue语句

continue语句的基本形式为:

for iteration_var in sequence:
    循环语句
    if 判断语句1:
        continue

当遍历序列时,如果判断语句1为真,则执行continue语句,跳出当前循环,直接进入下一次循环。 例如:

list = ['python','java','c','c++']
count = 0
for book in list:
    count += 1
    if count == 3:
        continue
print("当前书籍为:",book)

循环嵌套

python中,除了while循环与for循环,还有循环嵌套。循环嵌套就是在一个循环体里嵌入另一个循环。

以下场景便模拟了循环嵌套与跳出循环的现实场景: 在一次考试结束后,学校需要统计每位同学的考试总成绩。在这个场景中,我们先将所有同学组成一个序列,然后遍历每位同学,在遍历到每位同学时还要遍历每个同学的每门分数,计算出总成绩,最后得出每位同学的总成绩。  

嵌套循环分为for循环嵌套和while循环嵌套。

for循环嵌套

for循环嵌套的基本形式为:

for iteration_var in sequence:
    for iteration_var in sequence:
        循环语句

例如:

for x in range(1,10):
    for y in range(0,x):
        result = x + y
    print(result)

while循环嵌套

while循环嵌套的基本形式为:

while 判断条件:
    while 判断条件:
        循环语句

例如:

x = 1
y = 0
while x < 10:
    while y < x:
        result = x + y
        print(result)
        y += 1
    x += 1
    y = 0

迭代器

迭代器就是用来循环访问一系列元素。迭代器不仅可以迭代序列也可以迭代不是序列但是表现出序列行为的对象。

迭代器的优点

  • 迭代器访问与for循环访问非常相似,但是也有不同之处。对于支持随机访问的数据结构如元组和列表,迭代器并无优势,因为迭代器在访问的时候会丢失数据索引值,但是如果遇到无法随机访问的数据结构如集合时,迭代器是唯一访问元素的方式。

  • 迭代器仅仅在访问到某个元素时才使用该元素,在这之前,元素可以不存在,所以迭代器很适用于迭代一些无法预先知道元素总数的巨大的集合。

  • 迭代器提供了一个统一的访问集合的接口,定义iter()方法对象,就可以使用迭代器访问。

理解迭代器

可直接作用于for循环的数据类型如:listtupledict等统称为可迭代对象:Iterable。可以使用方法isinstance()判断一个对象是否是可迭代对象。

from collections import Iterable
result = isinstance([],Iterable)
print(result)
result = isinstance((),Iterable)
print(result)
result = isinstance('python',Iterable)
print(result)
result = isinstance(213,Iterable)
print(result)

结果为:

True
True
True
False

可以被next()函数调用并不断返回下一个值的对象称为迭代器:Iterator

next()函数访问每一个对象,直到对象访问完毕返回一个StopIteration异常。

可以使用isinstance()判断一个对象是否是Iterator对象。

例如:

from collections import Iterator
result = isinstance([],Iterator)
print(result)
result = isinstance((),Iterator)
print(result)
result = isinstance((x for x in range(10)),Iterator)
print(result)

结果为:

False
False
True

所有的Iterable都可以通过iter()函数转化为Iterator

定义迭代器

当自己定义迭代器时,需要定义一个类,类里面包含一个iter()函数,这个函数能够返回一个带next()方法的对象。

例如:

class MyIterable:
    def __iter__(self):
        return MyIterator()
class MyIterator:
    def __init__(self):
        self.num = 0
    def __next__(self):
        self.num += 1
        if self.num >= 10:
            raise StopIteration
        return self.num

复制迭代器

迭代器当一次迭代完毕后就结束了,在此调用便会引发StopIteration异常。如果想要将迭代器保存起来,可以使用复制的方法:copy.deepcopy():x = copy.deepcopy(y),不可使用赋值的方法,这样是不起作用的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python计算思维训练中,循环和列表是非常重要的概念。循环可以让我们重复执行某些操作,而列表则是一种非常方便的数据结构,可以存储多个元素。在Python中,我们可以使用for循环来遍历列表中的元素,也可以使用while循环来重复执行某些操作,直到满足某个条件为止。同时,我们还可以使用列表推导式来快速生成列表,这对于处理大量数据非常有用。总之,循环和列表是Python编程中必不可少的基础知识,掌握它们可以让我们更加高效地处理数据和解决问题。 ### 回答2: Python是一门流行的编程语言,使用它可以进行各种类型的编程。计算思维是一种重要的编程思维方式,它非常适合用Python语言来进行训练。在这方面,循环和列表是Python编程中重要的概念之一。 循环Python编程中非常常用的结构,它允许程序在代码块中重复执行相同的操作。 Python提供了两种类型的循环:for循环和while循环。 for循环适用于在已知对象(如字符串、列表或元组)上循环,而while循环适用于在条件为真时循环。在循环中,我们经常使用控制流语句如break和continue,来控制循环结束或跳过某些迭代。 列表是Python中非常重要的数据类型之一,可以存储一系列有序的元素。因为列表是可变的数据类型,所以它可以通过添加、删除元素来修改。 Python中的列表提供了一系列有用的方法,如append(添加元素)、pop(删除元素)、sort(排序元素)等。通过使用列表,我们可以很方便地存储和处理大量数据。同时,利用嵌套列表,我们可以存储复杂结构的数据,如矩阵和树等。 循环和列表是Python编程的两个重要构成部分。它们可以提高我们的编程效率,减少代码行数,同时也可以让我们更好地理解和应用计算思维的概念。因此,在Python编程训练中,我们应该注重循环和列表的学习。例如,我们可以通过编写简单的程序来打印斐波那契数列或找到列表中的最大值,来练习循环和列表的概念。 通过不断训练和实践,我们可以更深入地理解Python编程的精髓,提高我们的编程思维和手段。 ### 回答3: Python是一门非常强大的编程语言,它具有着多种数据类型和结构,其中列表是Python语言中最为常用的一种数据结构,循环则是Python语言中最为重要的控制语句之一。在Python的计算思维训练中,循环和列表是两个非常重要的主题。 在Python中,循环一般分为两种,分别是for循环和while循环。这两种循环语句可以帮助开发者重复执行一段代码,从而避免代码重复。for循环一般用于对一组数据的遍历,可以对列表、元组、字符串等序列类型进行遍历操作。while循环则是在条件满足的情况下一直执行一段代码,直到条件不满足为止。通过掌握循环语句,开发者能够编写出更加高效的代码,提高代码开发和维护的效率。 除了循环语句,列表也是Python语言中非常重要的数据结构之一。列表是一个有序的数据序列,可以存储任意类型的数据,包括数字、字符串、元组及其他列表等等。Python中的列表还具有嵌套的特性,即可以将一个列表当作另一个列表的元素。通过使用列表,开发者能够更加方便地处理大量数据,并进行各种复杂的操作。 循环和列表是Python计算思维中非常重要的两个主题。学会了循环和列表的使用方法,开发者能够更加高效地处理各种数据,编写出更加优雅的程序。同时,循环和列表也是Python语言中的基础,掌握好这两个主题,能够为后续的计算思维训练打下很好的基础,进一步提高开发者的编程能力和水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值