流程控制

流程控制

1. 流程控制

  流程控制即控制事物的执行流程

  任何使用执行流程只有三种情况

2. 必知必会

 

 

 

 

 

 

3. if

  3.1 if

 

if 条件 : 
  条件成立后执行if下的代码块



age = 36 if age < 28: print('小姐姐好')

 

  3.2 if else

 

 1 if 条件:
 2     条件成立之后执行的子代码块
 3 else:
 4     条件不成立的情况下执行的子代码块
 5 
 6 # if与else连用 两者的子代码永远只会执行一个
 7 
 8 
 9 age = 25
10 if age < 28:
11     print('小姐姐好')
12 else:
13     print('认错人了')

 

  3.3 if elif else

 

 1 if 条件1:
 2     条件1成立之后执行的子代码块
 3 elif 条件2:
 4     条件1不成立 条件2成立之后执行的子代码块
 5 elif 条件3:
 6     条件1和2都不成立 条件3成立之后执行的子代码块
 7 ...
 8 else:
 9     上述条件都不成立 执行的子代码块
10 
11 # elif可以有多个
12 三者连用也是只会其中一个子代码块
13 
14 
15 score = 79
16     if score > 90:
17         print('优秀')
18     elif score > 80:
19         print('良好')
20     elif score > 70:
21         print('一般')
22     elif score 78> 60:
23         print('及格')
24     else:
25         print('挂科重修')

 

  3.4 if的嵌套

 

 1 age = 26
 2 height = 165
 3 weight = 99
 4 is_beautiful = True
 5 is_success = True
 6 if age < 28 and height > 160 and weight < 100 and is_beautiful:
 7     print('小姐姐能否加个微信')
 8     # 判断小姐姐是否会给微信
 9     if is_success:
10         print('吃饭 看电影 天黑了...')
11     else:
12         print('去你妹的 变态!')
13 else:
14     print('可惜了')

 

 

 

 

 

 

 

4. while

  4.1 while循环

 

 1 while 条件:
 2     条件成立之后循环执行的子代码块
 3 
 4 while True:
 5     # 1.获取用户输入的用户名和密码
 6     username = input('username>>>:')
 7     password = input('password>>>:')
 8     # 2.判断用户名和密码是否正确
 9     if username == 'jason' and password == '123':
10         print('来宾三位')
11     else:
12         print('去你妹的 没钱滚蛋')

 

  4.2 while break

 

while + break
# break结束本层循环
while True:
# 1.获取用户输入的用户名和密码
    username = input('username>>>:')
    password = input('password>>>:')
# 2.判断用户名和密码是否正确
    if username == 'jason' and password == '123':
        print('来宾三位')
# 直接结束本层循环
        break
    else:
        print('去你妹的 没钱滚蛋')                

 

  4.3 break本层的含义

 

 1 # while嵌套
 2 while True:
 3     # 1.获取用户输入的用户名和密码
 4     username = input('username>>>:')
 5     password = input('password>>>:')
 6     # 2.判断用户名和密码是否正确
 7     if username == 'jason' and password == '123':
 8         print('来宾三位')
 9         while True:
10             cmd = input('请输入您的指令>>>:')
11             # 判断用户是否想退出
12             if cmd == 'q':
13                 break
14             print('正在执行您的指令:%s' % cmd)
15         break
16     else:
17         print('去你妹的 没钱滚蛋')

 

  4.4 全局标志位

 

# 标志位的使用
flag = True
while flag:
    # 1.获取用户输入的用户名和密码
    username = input('username>>>:')
    password = input('password>>>:')
    # 2.判断用户名和密码是否正确
    if username == 'jason' and password == '123':
        print('来宾三位')
        while flag:
            cmd = input('请输入您的指令>>>:')
            # 判断用户是否想退出
            if cmd == 'q':
                flag = False
            print('正在执行您的指令:%s' % cmd)
    else:
        print('去你妹的 没钱滚蛋')

 

5. for

  5.1 for循环

 

 1 for循环能做到的事情 while循环都可以做到
 2 但是for循环语法更加简洁 并且在循环取值问题上更加方便
 3 
 4 name_list = ['jason', 'tony', 'kevin', 'jack', 'xxx']
 5 # 循环取出列表的每一个元素并打印
 6 # while实现
 7 # count = 0
 8 # while count < 5:
 9 #     print(name_list[count])
10 #     count += 1
11 # for循环
12 for name in name_list:
13     print(name)
14 
15 """
16 for 变量名 in 可迭代对象:  # 字符串、列表、字典、元组、集合
17     for循环体代码
18     
19 ps:变量名如果没有合适的名称 那么可以使用i,j,k,v,item等
20 """
21 
22 # name_list = ['jason', 'tony', 'kevin', 'jack', 'xxx']
23 # 循环取出列表的每一个元素并打印
24 # while实现
25 # count = 0
26 # while count < 5:
27 #     print(name_list[count])
28 #     count += 1
29 # for循环
30 # for name in name_list:
31 #     print(name)
32 
33 # for循环字符串
34 # for i in 'hello world':
35 #     print(i)
36 
37 
38 # for循环字典:默认只能拿到k
39 d = {'username': 'jason', 'pwd': 123, 'hobby': 'read'}
40 for k in d:
41     print(k, d[k])

 

  5.2 range关键字

 

# 关键字range
# 第一种:一个参数  从0开始 顾头不顾尾
# for i in range(10):
#     print(i)
# 第二种:两个参数  自定义起始位置 顾头不顾尾
# for i in range(4, 10):
#     print(i)
# 第三种:三个参数  第三个数字用来控制等差值
for i in range(2, 100, 10):
    print(i)

"""
扩展知识
    https://movie.douban.com/top250  第一页
    https://movie.douban.com/top250?start=25&filter=  第二页
    https://movie.douban.com/top250?start=50&filter=  第三页
    https://movie.douban.com/top250?start=75&filter=  第四页
    
    https://movie.douban.com/top250?start=0&filter=  推测第一页
"""
base_url = "https://movie.douban.com/top250?start=%s&filter="
for i in range(0, 250, 25):
    print(base_url % i)
    

# range在不同版本的解释器中 本质不同
    在python2.X中range会直接生成一个列表
        在python2.X中有一个xrange也是迭代器(老母猪)
    在python3.X中range是一个迭代器(老母猪)  节省内存空间
    '''python2.X中xrange就是python3.x里面的range'''

 

  5.3 for+break

 

1 break功能也是用于结束本层循环
2 for i in range(10):
3     if i == 4:
4         break
5     print(i)

 

  5.4 for+conyinue

 

1 continue功能也是用于结束本次循环
2 for i in range(10):
3     if i == 4:
4         continue
5     print(i)

 

  5.5 for+else

 

1 else也是在for循环正常结束的情况下才会执行
2 
3 for i in range(10):
4     if i == 4:
5         break
6     print(i)
7 else:
8     print('你追我!!!')

 

  5.6 for循环的嵌套使用

 

 1 # for i in range(3):
 2 #     for j in range(5):
 3 #         print("*", end='')
 4 #     print()
 5 
 6 
 7 for i in range(1, 10):
 8     for j in range(1, i + 1):
 9         print('%s*%s=%s' % (i, j, i * j), end=' ')
10     print()

 

 

posted @ 2021-11-04 16:48  XX_Bb  阅读(46)  评论(0编辑  收藏  举报