day04循环语句

2019-03-07  本文已影响0人  我去买个橘子o

1. for循环

1.1 语法:

for 变量名 in 序列:
循环体

1.2 说明:

1.3 执行过程:当程序执行到for循环的时候:让变量去序列中取值,一个一个的取,取完为止,每取一个值,执行一次循环体。

for a in 'abcdefa':
    print(a, id(a))
    print('=====')

1.4 range()函数

range(N) N是正整数, 产生0~N-1的所有整数

for num in range(10):
    print(num)

range(M,N) M,N都是整数,并且M<N,产生M~N-1的所有整数

for num in range(1, 100):
    print(num)

注意:xrange()是python2.x中的函数,在python3.x中无效。
range(M,N,S) M,N,S都是整数,产生M~N-1中间隔S长度的每个数

for num in range(1, 100, 2):
    print(num)

练习:计算1+2+3+...+100的和

sum = 0
for i in range(1,101):
    sum += i
print(sum)

练习:计算2468...*20的结果

sum = 1
for i in range(2, 21, 2):
    sum *= i
print(sum)

练习:打印0-100中所有能够被3或者5整除的数

for i in range(0, 101):
    if i%3==0 or i%5==0:
        print(i)

2. while循环

2.1 语法:

while 条件语句:
循环体

2.2 说明:

2.3 两个极端:

练习1:用while循环控制程序打印10行"======"

count = 0
while count < 10:
    print('======')
    count += 1

练习2:使用while循环打印0-10

i = 0
while i<11:
    print(i)
    i += 1

练习3:使用while循环打印11-20

i = 11
while i<21:
    print(i)
    i += 1

练习4:使用while循环打印2,4,6,8,10,...,40

i = 2
while i < 41:
    print(i)
    i += 2 

练习5:不断输入,直到输入的值是100为止

num = 0
while result != 100:
    result = int(input("请输入数字: "))
print('结束')

补充:随机数
导入random模块,random是python内置的一个专门用来产生和处理随机数的模块
radnint(M,N) 产生M~N的随机数,要求M,N都是整数,并且N>M

import random
random_num = random.radnint(0, 10)
print("随机数: ", random_num)

练习:猜数字游戏,产生一个0-100的随机数,然后不断输入数字,直到输入的数字和产生的随机数一致为止

import random
print("=========猜数字游戏=========")
print("===猜0-100之间的一个随机数===")
random_num = random.randint(0, 100)
num = int(input("请猜一个数字: "))
i = 1
while num != random_num:
    if num<random_num:
        print("偏小")
    else:
        print("偏大")
    i += 1
    num = int(input("请重新猜猜: "))
print("恭喜猜中了数字", random_num,",一共猜了", i, "次")
if i > 10:
    print("亲,您的智商需要充值了哦")
elif i < 5:
    print("聪明")
    if i == 1:
        print("居然一次就猜对了")

2.4 for循环和while循环的选择:

3. continue、break和else

3.1 continue

用法:continue是关键字,只能出现在循环体中
功能:执行循环体的时候,如果遇到continue,就直接结束当次循环,直接进入下次循环的判断

for x in range(10):
    if x%3 == 0:
        continue
    print(x)
    print("=======")

3.2 break

用法:break 是关键字,只能出现在循环体
功能:执行循环体,如果遇到break,整个循环体直接结束

for x in range(10):
    print(x)
    break
    print("===")
print("结束")

练习:从0+1+2+......,求看到和超过1000000的时候,求出这个数

n = 0
m = 1
while True:
    n += m
    m += 1
    if n > 1000000:
        print(m, n)
        break

3.3 else

语法:
for 变量 in 序列:
循环体
else:
语句块

while 条件语句:
循环体
else:
语句块

执行过程:如果循环自然死亡,else对应的语句块会执行;如果循环因为遇到break而结束,else对应的语句块不执行

for x in range(5):
    print(x)
    break
else:
    print("循环结束")

4. 循环嵌套

循环嵌套:在循环体中又有循环结构
执行过程:外循环执行一次,内循环执行完

for x in range(5):
    for y in range(4):
        print(x)
        print(y)
        #if(x==1):
            #break    内层循环结束,外层循环不结束
    #if(x==1):
        #break          内层、外层循环都结束
上一篇下一篇

猜你喜欢

热点阅读