day4 循环语句(for and while)

python中循环结构有两种:for和while

一 for的运用

1.循环的作用:让部分操作重复执行
2.怎么使用for循环

'''
1)语法
for 变量 in 序列:
循环体
2)说明
for、in ------ 关键字 是固定写法
变量 ------ 变量名,需要满足变量的要求
序列 ------ 容器类型的数据,Python常见的序列:字符串、列表、元祖、集合、字典、迭代器、生成器、range
: ------ 固定写法
循环体 ------ 和for保持缩进的一条或多条语句。(需要重复执行的代码)
3)执行过程
让变量去序列中取值,一个一个的取,取完为止;每取一个执行一次循环体。(序列中数据的个数决定了循环的次数)

'''

for x in 'python':
    print(x)
    print('====')
print('goodbye')

3. range

range是Python内置的一个用来生成数字序列的函数,在Python2.x中由xrange代替。
作用:1,结合for循环 控制循环次数。 2,结合for循环产生指定范围的数字
range(N) ------产生数字范围:0 ~ N-1 (这儿的N是任意的正整数)
for x in range (10):
    print (x)

range(M,N) ------产生的数字范围是M ~ N-1 (M,N时整数,且M
  示例:所有的三位数
for x in range (100,1000):
    print (x)
range(M,N,step) ------ M,N,step都是整数,产生M~N-1,每次加step来产生下一个数(注意:如果step是负数,M>N.如果是正数,M
for x in range(0,100,2):
    print(x)

for x in range(100,0,-2):
    print(x)                      #   倒叙产生数字
练习1:使用for循环计算1+2+3+4......+100
sum1 = 0
for x in range(1,101):
    sum1 += x
print (sum1)

sum1 = 0
num = (1,2,3,4)
num = 1   sum1 += num, sum1 = sum1+num , sum1 = 0 + 1 = 1
num = 2   sum1 += num, sum1 = sum1+num , sum1 = 1 + 2
num = 3   sum1 += num, sum1 = sum1+num , sum1 = 1+2+3  
num = 4   sum1 += num, sum1 = sum1+num , sum1 = 1+2+3+4=10
print(sum1)   10
 练习2:打印出所有的水仙花数。(一个三位数,个位的立方加上十位的立方加上百位的立方等于这个数本身)
count = 0                           # 统计个数
for num in range (100,1000):
    ge = num % 10
    shi = num // 10 % 10
    bai = num // 100
    if ge ** 3 +shi ** 3 + bai ** 3 == num:
        print(num,'是水仙花数')
        count+=1
print (count)
 练习3,统计100以内个位数是5的个数
count = 0
for num in range (100):
    if num % 10 == 5 :
        count += 1
print ('个位数是5的个数:',count)

二 while 的运用

1. 怎么使用while

1)语法
while条件语句:
循环体
2)说明
while ---------- 关键字 固定写法
条件语句 ---------- Python支持的数据类型的数据、已经声明过的变量、除了赋值以外的运算表达式。
: ---------- 固定写法
循环体 --------- 和while保持一个缩进的一条或者多条语句;(循环体会循环)
3) 执行过程
先判断条件语句是否为True,如果是就执行循环体;
执行完循环体在判断语句是否为Ture,如果是又继续循环,直到执行到语句为Fasle,循环结束,直接执行循环后面的语句。

练习1:使用for循环计算1+2+3+4......+100

s = 1 
b = 0
while s < 101:
    b+=s
    s+=1
print (b)

练习2:打印出所有的水仙花数。

num = 100
while num < 1000:
    ge = num % 10
    shi = num // 10 % 10
    bai = num // 100
    if ge ** 3 +shi ** 3 + bai ** 3 == num:
        print(num,'是水仙花数')
    num += 1

while循环控制数字的产生

2.for循环和while循环
for循环能做的while一定能做;while能做的for不一定能做到

TIP: 循环次数确定一般用for循环,循环次数不确定的时候用while循环(死循环也用while)

练习:程序能够不断的进行输入操作,直到输入的内容为0为止。

n = int(input('请输入数字:')) 
while n != 0:
    n = int(input('请输入数字:'))

三 brakeContinueElse的运用

1.continue

continue是循环体中的关键字,用来结束当次循环
当执行循环体的时候遇到continue,当次循环结束,不再执行循环体后面的语句,直接进入下次循环的判断

for x in range (4):
    print (x)
    print ('====')
    continue
    print('+++')




sum1 = 0 
for x in range (100):
    if x % 2 == 1 :
        continue     # 不执行
    sum1 += x
print (sum1) 

2.break

break 是循环体中的关键字,用来结束整个循环
当执行循环体的时候遇到break,整个循环直接结束,程序执行循环后边的其他语句

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

while True:
if 循环结束条件:
break

while True:
    s = input('输入一个数')
    if s == 0:
        break

3. else

1)for的完整结构

for 变量 in 序列:
循环体
else
代码块
其他语句
2)while的完整结构
while条件语句:
循环体
else:
代码块
其他语句

当循环自然死亡(for中变量将序列中的数据取完了;while后边的条件语句的值为False),else后面的代码块会执行;

如果循环因为是遇到break二结束的,else后面的代码就不会执行。
应用:可以通过else来检测循环有没有遇到break

for x in range (10):
    print (x)
    if x == 4:
        break
else:
    print ('循环自然死亡')

你可能感兴趣的:(day4 循环语句(for and while))