Python 初级 6 循环

一、一个简单的for循环

1 重复做相同的事

for looper in [1, 2, 3, 4, 5]:
    print("hello")

1 looper的值从1开始, 所以looper = 1

2 对应列表中的每一个值,这个循环会把这个循环块中的所有工作完成一次

3 每次执行循环块前,变量looper会赋为这个列表中的下一个值

计数循环:重复一定次数的循环,称为计数循环

 

2 重复做稍微不同的事

每次for循环做不同的事

for looper in [1, 2, 3, 4, 5]:
    print(looper)

中括号做什么用?python就是利用中括号以及数之间的逗号来建立列表

利用循环做点有意义的事:打印9的乘法表:

for looper in [1, 2, 3, 4, 5, 6, 7, 8, 9]:
    print(9,"*",looper, "=", 9 * looper)

 

3 没有数字的计数:

for name in ["李老师", "王老师", "李老师"]:
    print(name, "说:同学们好")

 

二、一条捷径 :range()函数

1、重写9的乘法表:

for looper in range(1, 10):
    print(9,"*",looper, "=", 9 * looper)

 

2、range()函数的通常用法:

通常记数方式,从0开始,我们计算机进行运算时,通常以0为起点。

for i in range(0, 5):
    print("hello")

 

3、range()简写

for i in range(5):
    print("hello")

 

三、跳出循环

break

for name in ["李老师", "王老师", "李老师"]:
    print(name, "说:同学们好")
    if name == "李老师":
        break

 

四、字符串格式化

"{}说:同学们好".format("李老师")

改写前面的代码:

for name in ["李老师", "王老师", "李老师"]:
    print(name, "说:同学们好")

 

五、小结:

1 for循环

2 range()函数, 计数循环的一个捷径

3 跳出循环关键字: break

4 字符串格式化””.format()

 

六、课后练习

1 编写一个程序,显示一个乘法表。开始时询问用户显示哪个数的乘法表,交互如下:

系统询问:你要打印哪个数的乘法表:

用户输入3,则打印3的乘法表,用户输入5,就打印5的乘法表

输出如下:

5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50

 

2 原先的乘法表增加一个功能,当用户输入完要打印的某个数的乘法表后,再询问要乘到几?然后按照用户的输入,打印出乘法表。

交互如下:

系统询问:你要打印哪个数的乘法表

用户输入某个数(假设用户输入6)

系统再询问:最大乘到几

用户输入最大可乘到几(假设用户输入最大可乘到10)

系统输出如下:

6 * 1 = 6
6 * 2 = 12
6 * 3 = 18
6 * 4 = 24
6 * 5 = 30
6 * 6 = 36
6 * 7 = 42
6 * 8 = 48
6 * 9 = 54
6 * 10 = 60

 

3 猜数游戏,玩家猜一个1到100的数,共有6次猜数机会,每猜一次系统会提示比生成的数大或是小,猜对提示玩家赢了,猜错了计算猜的次数,若达到6次,提示玩家输了。

提示:秘密数可用如下语句生成:

import random
secret = random.randint(1, 100)

 

七、参考答案

1

num = int(input("你要打印哪个数的乘法表:"))
for i in range(1, 11):
    print("{} * {} = {}".format(num, i, num * i))

2

sel_num = int(input("你要打印哪个数的乘法表:"))
max_num = int(input("最大乘到几:"))
for i in range(1, max_num + 1):
    print("{} * {} = {}".format(sel_num, i, sel_num * i))

3

import random
secret = random.randint(1, 100)
print("请猜一个1到100的数,你有6次机会")
success = 0
for i in range(6):
    guess = int(input("请猜数:"))
    if guess < secret:
        print("你猜的数太小了")
    elif guess > secret:
        print("你猜的数太大了")
    else:
        success = 1
        break
if success == 1:
    print("恭喜你,你猜对了")
else:
    print("对不起,你猜错了,秘密数为:", secret)
posted @ 2019-09-07 16:46  绿色的麦田  阅读(426)  评论(0编辑  收藏  举报