一、 if
1、 单独的if结构:
if 条件:
满足条件后要执行的代码
2 、 双分支结构:二必选一
if 条件:
满足条件执行代码
else:
上面的条件不满足就走这段
3 、 多分支
if 条件:
满足条件执行代码
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
else:
上面所有的条件不满足就走这段
4 、 嵌套:
1 username = input('请输入用户名:')
2 password = input('请输入密码:')
3
4 if username == '王大锤' :
5 if password == '123':
6 print('成功登陆')
7 else:
8 print('密码错误')
9 else:
10 print('用户名错误')
二 、 while
1、基本循环
while 循环条件:
循环体
如果条件为真,那么循环体则执行
如果条件为假,那么循环体不执行
2、循环终止语句
break: 用于完全结束一个循环,跳出循环体执行循环后面的语句
continue: 只是终止本次循环,接着还执行后面的循环,break则完全终止循环
3、与其他结构嵌套:
while ... else .. : 当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
无break的例子:
1 count = 0
2 while count <= 5 :
3 count += 1
4 print("Loop",count)
5
6 else:
7 print("循环正常执行完啦")
8 print("-----out of while loop ------")
9
10
11 # 输出如下
12 Loop 1
13 Loop 2
14 Loop 3
15 Loop 4
16 Loop 5
17 Loop 6
18 循环正常执行完啦
19 -----out of while loop ------
被break的例子:
1 count = 0
2 while count <= 5 :
3 count += 1
4 if count == 3:break
5 print("Loop",count)
6
7 else:
8 print("循环正常执行完啦")
9 print("-----out of while loop ------")
10
11 # 输出如下
12
13 Loop 1
14 Loop 2
15 -----out of while loop ------
三 、 for循环
用户按照顺序循环可迭代对象的内容
1 #字符串的for循环
2 msg = '小鱼在水里游来游去'
3 for i in msg:
4 print(i)
5
6 #列表的for循坏
7 li = ['11', '22', '33', '44', '55']
8 for i in li:
9 print(i)
10
11 #字典的for循环
12 dic = {'name':'王大锤', 'age':18, 'sex':'男'}
13 for k, v in dic.items():
14 print(k, v)
只要循环被break打断,则不执行else程序
li = ['唐僧', '孙悟空', 'k', '沙和尚', '猪八戒']
for i in li:
if i == 'k':
break
print(i)
# 结果只输出
# 唐僧
# 孙悟空
四 、 枚举:enumerate
对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值
1 li = ['唐僧', '孙悟空', '沙和尚', '猪八戒']
2 for i in enumerate(li):
3 print(i) # 输出结果为四个新的列表
4
5 for i, name in enumerate(li, 0): # 起始位置默认是0,可更改
6 print(i, name) # 输出结果为四行带编号的数据,起始编号为enumerate内的第二个参数
输出结果如下:
1 #第一次输出四个列表
2 (0, '唐僧')
3 (1, '孙悟空')
4 (2, '沙和尚')
5 (3, '猪八戒')
6
7
8 # 第二次输出四行数据
9 0 唐僧
10 1 孙悟空
11 2 沙和尚
12 3 猪八戒
五 、 range:指定范围,生成指定数字
1 for i in range(1, 10): # 范围为1-10,不包含10
2 print(i) # 输出结果依次为1 - 9
3
4 for i in range(1, 10, 2): # 范围为1-10,不包含10,步长为2
5 print(i) # 输出结果依次为1,3,5,7,9
6
7 for i in range(10, 1, -2): # 范围为10-1,不包含1,步长为-2,即反向
8 print(i) # 输出结果依次为10,8,6,4,2
注意: 反向输出时,必须加-1,才会执行代码
1 for i in range(10, 1): # 反向,未加步长
2 print(i) # 不会输出内容
3
4 for i in range(10, 1, -1): # 反向,加步长-1
5 print(i) # 输出内容10,9,8,7,6,5,4,3,2