流程控制

一、if判断

1、为什么要有if判断?
  判断事物的对错,真假,是否可行,想让计算机像人一样去工作,那么计算机也应该有对事物的对错,真假,是否可行的判断能力,从而做出不同的响应。

2、语法

if 条件:
    代码1
    代码2
    代码3
    代码4
    ...

if 条件:
    代码1
    代码2
    代码3
    代码4
    ...
else:  #不能单独使用,必须和if,where,for配合使用
    代码1
    代码2
    代码3
    代码4
    ...

if 条件:
    代码1
    代码2
    代码3
    代码4
    ...
elif 条件:
    代码1
    代码2
    代码3
    代码4
    ...
elif 条件:
    代码1
    代码2
    代码3
    代码4
    ...
else:
    代码1
    代码2
    代码3
    代码4
    ...
'''
if、elif、else同一级别配合使用的时候,只会指向一个代码块(走了if就不会走elif、else,走了elif
就不会走else,if看到没走,走了else说明if elif都没走,都不满足if elif的条件) '''

3、if的嵌套

if 条件:
    代码1
    代码2
    代码3
elif 条件:
    代码1
    if 条件:
        代码1
        代码2
        代码3
    代码2
    代码3
else:
    代码1
    代码2
    代码3
#不仅可以嵌套在elif下,还可以嵌套在if和else下,还可以多层嵌套

二、while循环

1、为什么要有while循环

  让电脑重复做某一件事情

2、语法

while 条件:
    代码1
    代码2
    代码3
    代码4
    ...


while 条件:
    代码1
    代码2
    代码3
    if 条件:
        break #立即结束本层循环(只针对它属于的那一个while有效)
    ...

while 条件:
    代码1
    代码2
    if 条件:
        continue  #跳出本次循环,直接开始下一次循环
    代码4
    ...

3、while+else语法

while 条件:
    代码1
    代码2
    代码3
else:
    代码1
    代码2

while 条件:
    代码1
    if 条件:
        代码1
        break
    代码3
else:
    代码1
    代码2

#只有当while循环依据条件征程结束才会走else代码,如果是主动结束的break,那么不会走else

三、for循环

1、特点:不依赖索引取值

2、语法

for 变量名 in 容器类型:
    代码1
    代码2
    代码3
    代码4

3、for循环字典

d = {'name': 'jason', 'password': '123', 'hobby': [1, 2, 3, 4]}
for i in d:
    print(i)

>>>
name
password
hobby
#只能拿到key的值,要想拿到value的值,必须print(d[i])

4、用for循环循环打印1~10

for i in range(1,10):
    print(i, end=' ')

>>>
1 2 3 4 5 6 7 8 9 
#range函数顾头不顾尾,print()函数自带换行,带上end=' '可以将打印内容在一行显示

5、break也可用来主动结束for循环

name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
    if name == 'jason':
        break
    print(name)

6、continue跳出本次循环,开始下一次循环

name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
    if name == 'jason':
        continue
    print(name)

7、for循环的嵌套

for i in range(1, 10):
    for j in range(1, i + 1):  # 内存循环的range条件是根据外层循环决定的
        print('%s*%s=%s' % (i, j, i * j), end=' ')
    print()

  

四、补充

1、Python用缩进表示代码的归属,同一缩进的代码,称之为代码块

2、布尔值为False的数据有:0、None、''、[]、{}

3、布尔值可以直接用来判断

4、变量名指向的值为True或False的变量名也可以用来判断

5、len(),用于获取数据类型(容器类型)的个数,字符串是特例,获取的是字符串中字符的个数

6、range()在Python2和Python3中的区别

Python2中

  range()是一个列表

  xrange()与Python3中的range()一样

Python3中

  range()是一个老母猪,你需要值的时候我才给你,节省内存空间

 7、全局标志位flag,用于干掉循环

posted @ 2019-07-02 15:42  竣~  阅读(154)  评论(0编辑  收藏  举报