【04】循环语句

2019-03-14  本文已影响0人  Z_JoonGi

python中的循环结构有两种: for循环、while循环。

1.1.for循环

a.语法
"""
for 变量名 in 序列:
    循环体
"""
b.说明
"""
for    -    关键字,固定写法 
变量名  -    和声明变量的时候的变量名要求一样   
in     -    关键字,固定写法
序列    -    python中序列有: 字符串、列表、元祖、字典、集    合、range、生成器和迭代器等
:      -     固定写法  
循环体  -    和for保持一个缩进的一条或者多条语句  
"""
c.执行过程

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

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

"""
a = 'a'  print(a), print('======')
a = 'b'  print(a), print('======')
a = 'c'  print(a), print('======')

a
=======
b
=======
c
=======
...
"""

1.2range函数

# range(N)   -   N是正整数,产生0~N-1的所有整数  
for num in range(10):
    print(num)
# range(M,N) -   M,N都是整数,并且N>M, 产生M ~ N-1的所有整数
for num in range(100, 1000):
    print(num)

# range(M,N,S)  - M,N,S都是整数,产生M~N-1,每次加S来产生下一个数
for num in range(0,101,3):
    print('===:',num)

# 注意:xrange是python2.x的语法,python3.x无效

2.1while循环

a.语法
"""
while 条件语句:
    循环体
"""
b.说明:
"""
while    -   关键字,固定写法  
条件语句   -   可以是数据、变量、运算表达式等。不能是赋值运算
:        -   固定写法
循环体    -   和while保持一个缩进的一条或者多条语句(会被重复执行)
"""
c.执行过程:
"""
先判断条件语句是否为True,为True就执行一次循环体,
执行完循环体再判断条件语句是否为True,为True又执行一次循环体,
执行完循环体再判断条件语句是否为True,为True又执行一次循环体,
以此类推, 直到判断条件语句的结果为False,整个循环直接结束。  

两个极端: 1.当条件语句永远为True,会造成死循环的现象     
         2.一开始条件语句的结果就是False,那么循环一次都不会执行
"""

2.2 (补充)随机数

导入random模块,random是python内置的一个专门用来产生和处理随机数的模块

# randint(M,N) - 产生M~N的随机数,要求M,N都是整数,并且N>M
import random 
random_num = random.randint(0,10)
print('随机数:',random_num)

3.for循环和while循环的选择

4.1.continue

for x in range(10):
    if x % 3 ==0:
        continue
    print(x)
    print('===========')
'''
1
=====
2
=====
4
=====
5
=====
7
=====
8
=====
'''

4.2 break

# 练习: 从0+1+2+......+n,求和超过1000000的第一个数
sum1 = 0
n = 1
while True:
    sum1 += n
    if sum1 > 1000000:
        break
    n += 1

print(n, sum1, sum1-n)  

#  1414 1000405 998991

4.3 else

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


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

"""
b.执行过程:
for x in range(5):
    print(x)
    break
else:
    print('循环结束,没有遇到break')

# 0

5.doubleLoop

for x in range(5):
    for y in range(4):
        print(x)
        print(y)
    if (x == 1):
        break

"""
x = (0,1,2,3,4)
x = 0     y = (0,1,2,3)
          y = 0  print(0), print(0)
          y = 1  print(0), print(1)
          y = 2  print(0), print(2)
          y = 3  print(0), print(3)

x = 1     y=(0,1,2,3)
...




输出:
0
0
0
1
0
2
0
3

"""
上一篇下一篇

猜你喜欢

热点阅读