Python——循环

一. while 循环

在 Python 中,while 循环用于循环执行程序,只要判断条件为 True,就会一直不停地循环执行。

while语句的一般形式:

while 判断条件:
       语句

【注】在 Python 中没有  do..while  循环。

流程图:

                                                        While Loop

#!/usr/bin/env python3
 
n = 100
 
sum = 0
counter = 1
while counter <= n:
    sum = sum + counter
    counter += 1
 
print("1 到 %d 之和为: %d" % (n,sum))

执行结果:

1 到 100 之和为: 5050

while 循环使用 else 语句

在 while … else 在条件语句为 false 时执行 else 的语句块:

count = 0

while count < 5:
    print(count," 小于  5")
    count += 1
else:
    print(count," 大于或等于  5")

执行结果:

0  小于  5
1  小于  5
2  小于  5
3  小于  5
4  小于  5
5  大于或等于  5

 

二.  for  循环

如果说 for 循环是顺序播放,那 while 循环可以视为单曲循环

for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

语法格式:

for <val> in <序列>:

          <循环体>

val 是一个变量,在每次迭代中,用于接收将序列中元素的值。

循环会一直继续,直到到达序列的最后一项。循环体与其余的代码使用缩进分隔。

流程图:

                                                                  For Loop

>>>
>>> for letter in "zth":
...     print(letter)
...
z
t
h
>>>
>>> li = ["hello",",","zth"]
>>>
>>> for letter in li:
...     print(letter)
...
hello
,
zth

 

for  循环中使用 else 语句

如果循环正常执行完(即:不是通过 break 跳出而中断的),则执行 else 部分。

注意: break 语句可以用来跳出 for 循环,在这种情况下,else 部分会被忽略。

songs = ['纵','有','红','颜']   
for letter in songs:
    print(letter)
else:
    print('百生千劫')

执行结果:
 

纵
有
红
颜
百生千劫

 

三. 循环遍历字典元素

>>> dict0 = {'name':'zth','age':20}
>>>
>>>
>>> for tup in dict0:
...     print(tup,dict0[tup])
...
name zth
age 20
>>>
>>>
>>> for key,value in dict0.items():
...     print(key,value)
...
name zth
age 20

字典中的元素是没有顺序的。也就是说,迭代时字典中的键和值都能保证被处理,但是处理顺序不确定。

 

四. 迭代工具

1. 并行迭代

程序可以同时迭代两个序列。

>>> li1 = ['name','age']
>>> li2 = ['zth','20']
>>>
>>> for i in range(len(li1)):
...     print(li1[i],': ',li2[i])
...
name :  zth
age :  20

range()函数

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

  • 可以使用 range 指定区间的值
  • 也可以使 range 以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):
  • 您可以结合range()和len()函数以遍历一个序列的索引
>>> for i in range(5):
...     print(i)
...
0
1
2
3
4
>>>
>>> for i in range(5,9):        # 指定区间
...     print(i)
...
5
6
7
8
>>>
>>> for i in range(0,10,3):     # 设置步长
...     print(i)
...
0
3
6
9

zip()  函数

zip 函数用来进行并行迭代,可以把两个序列合并在一起,返回一个元组的列表。

zip 函数可以作用于任意数量的序列,并且可以应对不等长的序列。当短序列遍历结束时,for 循环就会遍历结束。

>>> li1 = ['name','age']
>>> li2 = ['zth','20']
>>>
>>>
>>> for i,j in zip(li1,li2):
...     print(i,': ',j)
...
name :  zth
age :  20
>>>
>>>
>>> for i,j in zip(range(3),range(100)):        # 不等长序列
...     print(i,'<-> ',j)
...
0 <->  0
1 <->  1
2 <->  2

 

2. 翻转和排序迭代

reversed 和  sorted  函数可作用于任何序列或可迭代对象,但不是原地修改对象,而是返回翻转或排序后的版本。

sorted 函数返回一个列表,reversed 函数返回一个可迭代对象。

>>> sorted([5,3,1,8])
[1, 3, 5, 8]
>>> sorted("Hello,World")
[',', 'H', 'W', 'd', 'e', 'l', 'l', 'l', 'o', 'o', 'r']
>>>
>>>
>>> list(reversed("Hello,World"))
['d', 'l', 'r', 'o', 'W', ',', 'o', 'l', 'l', 'e', 'H']
>>> ''.join(reversed("Hello,World"))
'dlroW,olleH'

 

五. 跳出循环

break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。

1. break 语句

break 用于终止循环语句。即使循环条件不是 False 或者序列还没被完全递归完,也会终止。

break 语句用在 while 和 for 循环中。

如果使用嵌套循环,break 语句就会停止执行最深层的循环,并开始执行下一行代码。

 

语法格式:

            break

流程图:

                                       break

 

>>> for  letter in "Hello":
...     if letter == 'l':
...             break
...     print(letter)
...
H
e
>>>
>>>
>>> num = 10
>>> while num>0:
...     print(num)
...     num -=1
...     if num ==8:
...             break
...
10
9

 

2. continue 语句

continue 用于跳过当前循环的剩余语句,然后继续进行下一轮循环。

continue 语句用于 while 和 for  循环中。

语法格式:

       continue

流程图:

                                                          continue

 

>>> for letter in "Hello":
...     if letter == 'l':
...             continue
...     print(letter)
...
H
e
o
>>>
>>>
>>> num = 3
>>> while num > 0:
...     num -= 1
...     if num == 2:
...             continue
...     print(num)
...
1
0

 

六. pass 语句

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

pass 不做任何事情,一般用做占位语句

语法格式:

      pass

>>> for letter in "Hello":
...     if letter == 'l':
...             pass
...             print('执行 pass 块')
...     print(letter)
...
H
e
执行 pass 块
l
执行 pass 块
l
o

 

 

### 回答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、付费专栏及课程。

余额充值