当前位置 : 主页 > 编程语言 > python >

Python轻松入门(四):循 环

来源:互联网 收集:自由互联 发布时间:2022-06-15
计算机程序的三大语句结构之一示意图 循环也是计算机程序的三大语句结构之一。它是在满足条件的情况下,反复执行某一段代码的计算过程。 # 例子 循环 原本需要编写 10 行的代码,

计算机程序的三大语句结构之一示意图

Python轻松入门(四):循  环_for循环


循环也是计算机程序的三大语句结构之一。它是在满足条件的情况下,反复执行某一段代码的计算过程。

# 例子 循环 原本需要编写 10 行的代码,现在使用【循环】后,编写方便了很多。在 Python 中,循环语句有两类:for 循环和 while
numberList = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
for number in numberList:
print(number)
# 输出结果
10
20
30
40
50
60
70
80
90
100

# 例子
dateList = [19930506, 19940114, 19951101, 19960704]
for oneDate in dateList:
print(oneDate)


# 例子
fruitList = ["apple", "grape", "cherry"]
for fruit in fruitList:
print(fruit)

# 例子
name = ["david","bob","bill"]
for i in name:
print(i)
print(i)
# 输出结果
david
bob
bill
bill

# 例子
name = ["david","bob","bill"]
for i in name[1:]:
print(i)
print(i)
# 输出结果
bob
bill
bill

# 例子
name = ["david","bob","bill"]
newList = []
for i in name[1:]:
newList.append(i)
print(newList)
# 输出结果
['bob', 'bill']

for循环应用:累加/累乘

for循环经常应用在多个数累加/累乘的计算中,也就是说需要反复多次地对大量数字进行同样地操作。

比如我有一个列表,里面是自己京东账户购物车里的5件商品的价格,然后需要计算清空购物车花多少钱。

# 例子
JDList = [109.0, 21.5, 30.0, 509.0]
Sum = 0
for Price in JDList:
Sum = Sum + Price
print(Sum)
# 输出结果
669.5

遍 历

遍历的定义:指通过某种顺序对一个数据结构中的所有元素进行访问。隐喻:遍历就像点名,需要有顺序地对所有成员进行一次“查询”。

for 循环遍历字典的键,有两种方法可以使用:一是 for 循环遍历字典; 这个方法和 for 循环遍历列表的格式类似。二是 for循环遍历字典中的所有键; 使用 for 循环遍历 dict.keys(),将字典中的键赋值给变量,再通过 print() 输出变量。

# 例子
studentAge = {"Gary": 14, "Adam": 13, "Jack": 15}
for key in studentAge:
print(key)
# 输出结果
Gary
Adam
Jack

# 例子
studentAge = {"Gary": 14, "Adam": 13, "Jack": 15}
for key in studentAge:
print(studentAge[key])
# 输出结果
14
13
15

遍历字典的键和值: 刚才我们使用 for 循环遍历字典的键和字典的值,如果想要同时输出字典的键和值,该怎么办呢?这时,我们可以在循环内部分别输出字典的键和对应的值。 注意,在 for 循环中,一次循环会把循环内的代码全部执行完后,再开始下一次循环。

# 例子
studentAge = {"Gary": 14, "Adam": 13}
for key in studentAge:
print(key)
print(studentAge[key])
# 输出结果
Gary
14
Adam
13

# 例子
age = {"Gary": 14, "Adam": 13, "Jack": 15, "Max":13, "Tim":14}
for key in age:
print(key)
print(age[key])
# 输出结果
Gary
14
Adam
13
Jack
15
Max
13
Tim
14

# 例子
Names = ["Tony", "Kevin", "Asum", "Jessica", "Monic", "Black"]
for name in Names:
print(name)

# 例子
studentAge = {"Gary": 14, "Adam": 13}
for key in studentAge:
print(key)
print(studentAge[key])

# 例子
Names = ["Tony", "Kevin", "Asum", "Jessica", "Monic", "Black"]
for name in Names:
print(name)

# 例子
list = [44, 51, 38, 66, 90]
sum = 0
for value in list:
sum = sum + value
print(sum)

while循环 -- 条件循环

条件循环又称while循环,是一种以关键字while开头,以判断条件是否成立来决定是否重复执行某些代码的执行顺序。判断条件为真就继续循环执行,判断条件为假就终止循环。

# 用for和while循环 打印一个列表(list)里面的所有元素。
NumberList = [1,2,3,4,5]
for i in NumberList:
print(i)

NumberList = [1,2,3,4,5]
j = 0
while j < 5:
print(NumberList[j])
j = j + 1

自增/自减是指在循环等结构中有一个起“计数器”作用的变量,通过对这个变量的增减,来控制循环终止的条件。

count = 1
while count <=5:
print(count)
count = count + 1

count = 5
while count >=1:
print(count)
count = count - 1

# 例子 这四行代码使用了while循环把小于等于100的数字全部打印出来。
# 第一行代码初始化了变量Counter的值,赋值为0;
# 第二行到第四行就是while循环结构。
# 第二行使用while循环来判断当前的Counter是不是小于等于100。如果是,就继续执行下面的缩进代码;如果不是,就程序就终止。
# 第三行,在while循环为True的情况下,打印当前Counter的值;
# 第四行,在while循环为True的情况下,给当前的Counter加1再赋值给Counter,得到新的Counter,继续回到第二行代码,不断循环,直到while循环判断为False,程序结束。

Counter = 0
while Counter <= 100:
print(Counter)
Counter = Counter + 1

# 例子
sum= 0
counter= 0
while counter < 5:
sum = sum + counter
counter = counter + 1
print(sum)
# 输出结果:
0
1
3
6
10

# 例子
sum= 0
counter= 0
while counter < 5:
sum = sum + counter
counter = counter + 1
print(sum)
# 输出结果
10

# 例子
sum= 0
counter= 0
while counter < 5:
counter = counter + 1
sum = sum + counter
print(sum)
# 输出结果
15

总结:for循环和while循环的区别

简而言之,需要记住三条:

  • for循环又叫计数循环,多用于批量处理列表内的每个元素;while循环又叫条件循环,多用于条件判断。
  • for循环有天然的边界条件,while循环没有,需要程序员精心设计。
  • 大多数时候,for循环和while循环可以互换使用。
  • break、continue 跳出循环

    迭代 Iteration 定义:编程中的迭代是指重复执行某些代码,每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。在实际应用中迭代经常和循环混用。

    无论是for循环还是while循环,在一个大循环里面,默认的终止条件都是边界条件。在触发边界条件之前,代码会一直循环执行。break、continue可以改变这种“默认循环执行”。

    continue的作用:跳过本次迭代(小循环)中它后面的剩余代码,直接进入下一次迭代。

    # 例子
    NumberList = [1,2,3,4,5,6,7,8,9,10]
    for i in NumberList:
    if i <= 5:
    continue
    print(i)
    print(i)
    #输出结果
    6
    7
    8
    9
    10

    break的作用:跳出整个大循环,终止整个循环语句的执行,让代码从循环外的第一行开始执行。break会“跳出”或终止某一个循环,它结束的是整个循环结构。

    # 例子
    NumberList = [1,2,3,4,5,6,7,8,9,10]
    for i in NumberList:
    if i > 5:
    break
    print(i)
    # 输出结果 如果i>5在循环体内就没有输出,第一次就跳出了循环,结束了整个循环
    1
    2
    3
    4
    5# 例子
    NumberList = [1,2,3,4,5,6,7,8,9,10]
    for i in NumberList:
    if i <= 5:
    continue
    print(i)
    print(i)
    #输出结果
    6
    7
    8
    9
    10

    # 例子
    number = [1,-2,3,-4,5,-6]
    for i in number:
    if i < 0:
    continue
    print(i)
    # 输出结果
    1
    3
    5

    # 例子
    NumberList = [10, 4, 1, -1, 20, 6, 7, -20, 2, 13]
    for i in NumberList:
    if i <= 5:
    continue
    print(i)
    print(i)
    # 输出结果
    10
    20
    6
    7
    13

    # 例子
    NumberList = [10, 4, 1, -1, 20, 6, 7, -20, 2, 13]
    for i in NumberList:
    if i > 5:
    continue
    print(i)
    print(i)
    # 输出结果
    4
    1
    -1
    -20
    2

    # 例子
    List = [1, 10, 100, 50, 40, 30, 200]
    for i in List:
    if i <= 50:
    continue
    print(i)

    # 输出结果 打印出里面大于50的数字
    100
    200

    # 例子 下面三个例子需要比对看,掌握缩进和对齐的用法
    NumberList = [10, 4, 1, -1, 20, 6]
    for i in NumberList:
    if i <= 5:
    continue
    print(i)
    # 输出结果 打印出大于5的数 print和if同级,每次都打印。
    10
    20
    6

    # 例子
    NumberList = [10, 4, 1, -1, 20, 6]
    for i in NumberList:
    if i <= 5:
    continue
    print(i)
    # 输出结果 内循环是打印出大于5的数 print和for同级,不是每次循环都打印,只打印最后一次。
    6

    # 例子
    NumberList = [10, 4, 1, -1, 20, 6]
    for i in NumberList:
    if i <= 5:
    continue
    print(i)
    # 输出结果 print()语句不仅在for循环以内并且在if判断里面,所以当i小于等于5的时候,判断为True,执行continue,程序会跳过同级的print(),结束本次迭代。而当i大于5的时候,判断为False,没有程序执行。所以整个程序没有输出。
    没有输出

    # 例子
    NumberList = [1,2,3,4,5,6,7,8,9,10]
    for i in NumberList:
    if i > 5:
    break
    print(i)
    # 输出结果 如果i>5在循环体内就没有输出,第一次就跳出了循环,结束了整个循环
    1
    2
    3
    4
    5

    # 例子
    number = [1,-2,3,-4,5,-6]
    for i in number:
    if i < 0:
    print(i)
    break
    # 输出结果
    -2

    # 例子
    NumberList = [10, 4, 1, -1, 20, 6, 7, -20, 2, 13]
    for i in NumberList:
    if i > 10:
    print(i)
    break
    # 输出结果
    20

    # 例子
    Number = [3, 7, 6, 4, 8]
    for i in Number:
    if i <= 5:
    continue
    print(i)
    # 输出结果 找出其中大于5的数字并输出
    7
    6
    8

    # 例子 现在班级内有一个活动,五个同学报了名,只能让前三个报名的同学参加,并输出他们的名字。
    Names = ['James', 'Tony', 'LiLei', 'HanMeimei', 'Pony']
    i = 0
    for N in Names:
    if i < 3:
    print(N)
    i=i+1
    continue

    Names = ['James', 'Tony', 'LiLei', 'HanMeimei', 'Pony']
    n = 0
    for i in Names:
    if n == 3:
    break
    print(i)
    n = n + 1

    continue和break 不同之处在于:continue是跳过小循环中剩下的代码,继续下一次迭代。而break直接终止整个大循环。

    网友评论