分支结构,循环结构,for循环,九九乘法表
一:复习
'''
1.变量名命名规范
-- 1.只能由数字、字母 及 _ 组成
-- 2.不能以数字开头
-- 3.不能与系统关键字重名
-- 4._开头有特殊含义
-- 5.__开头__结尾的变量,魔法变量
-- 6.支持大小驼峰,但建议 _ 连接语法
-- 7.尽量见名知意
2.常量:用全大写标示常量,只能自我保障不去修改全大写的变量
3.数据类型
-- int: 存放所有的整型数据 => py2中分 int | long
-- float: 存放所有的浮点型数据 => %015.3f
-- bool: True | False
-- str: '' | "" | '''''' | """"""
-- list: 按索引存放多个数据
-- dict:按描述信息的key来标示存放多个数据
-- 重点:所有数据都是单独存放,数据的地址是被存放在普通变量 | 集合(list|dict)容器中
4.运算符
-- 算术运算符:+ | - | * | / | // | % | **
-- 赋值运算符:
-- 1.算术运算符= a += 1 => a = a + 1
-- 2.链式赋值:a = b = c = 10
-- 3.交叉赋值:a, b = b, a
-- 4.解压赋值:a, _, _, b = [1, 2, 3, 4]
-- 比较运算符:> | < | == | != | >= | <=
-- 30 > num > 20
-- 逻辑运算符
-- 30 > num and num > 20:两边都成立,才成立,前面不成立,则无需判断后面
-- 30 < num or num < 20: 两边都不成功,才不成立,前面成立,则无需判断后面
-- not 0 | not True:真假取反
-- 了解:and 优先级高于 or
'''
二,今日内容
'''
流程控制
1. 分支结构
-- if
-- if...else...
-- if...elif...else...
-- if嵌套
2. 循环结构
-- while
-- while...else... 了解
-- break | continue 重点
3. for循环(迭代器)
-- range() 函数
'''
三,流程控制
'''
Python程序执行,一定按照某种规律在执行
1.宏观一定是自上而下(逻辑上方代码一定比逻辑下方代码先执行):顺序结构
2.遇到需要条件判断选择不同执行路线的执行方式:分支结构
3.有些事情需要重复不断的去执行(当满足某种条件或不满足某种条件结束重复动作):循环结构
'''
四,if 分支结构
''' if 条件: 同缩进的代码块 ''' if age > 18: print("") if age > 30: print("") elif age > 18: print("") # 1.所有分支都可以根据需求决定是否有else结构,else结构就是条件(所有条件)不满足才去执行的分支 # 2.elif可以根据需求出现多次(代码层次方面要考虑条件的先后顺序) # if嵌套 # 内部条件判断与否决定于外层条件
if 条件: if 条件: pass elif 条件: pass ... else: pass elif 条件: ... # 在任何结构(缩进下,需要条件判断)就可以出现if分支结构
五,while
'''
语法:
while 条件:
循环体
# 1.当条件满足时,会执行循环体,然后再去判断条件成功与否
# 2.如果还满足,重复1,2的过程
# 3.如果不满足,结束循环体
# 注:如果需要结束循环,一定需要让条件在某种情况下不满足
'''
# 重点
# break:结束所属循环(本层)
# continue:结束所属循环的本次循环,进入下一次循环
# 难点:循环嵌套
# 如果有循环写在了循环内部,就形成了循环嵌套
# 了解:
# 1.死循环:不能主动结束的循环,想要结束只能通过break
# 2.0,"",[],{},None可以被while 及 if这种需要条件的关键词转换为False,其他都是True
# 3.while...else...:else分支会在while循环正常结束(没有被break结束)时执行
六,for 循环
''' for用来完成特定的循环需求 语法: for 循环得到的结果 in 被循环的容器: 循环体 # 1.第一次循环,循环得到的结果 就是 被循环的容器 中第一个值 # 2.再次循环,循环得到的结果 会被重新赋值为 被循环的容器 中第二个值,以此类推 # 注:每一次循环 循环得到的结果 不使用,下一次循环就会被覆盖,无法找回 # 3.当 被循环的容器 中的值被 循环得到的结果 全部赋值一遍后,循环自动结束 ''' # range() # 1. range(结束不被包含)
for v in range(5): #[0,1,2,3,4]
print(v)
# 2. range(开始被包含, 结束不被包含)
for v in range(5,10): #[5,,6,7,8,9]
print(v)
# 3. range(开始被包含, 结束不被包含, 步长)
for v in range(5,10,2): #[5,7,9]
print(v)
# 4. range(10, 5, -1) # [10, 9, 8, 7, 6] #当步长为负数,可以从大值到小值获取区间
总结:
# 1.for循环一般不考虑死循环(但是有无限个数的容器)
# 2.for循环中break也能主动结束for循环
# 3.for循环中continue也能主动结束for的本次循环
七,案例:九九乘法表
#案例:99乘法表 ''' 1x1=1 1x2=2 2x2=4 1x3=3 2x3=6 3x3=9 .... ''' ''' for i in range(1,10): #第一行就打印一条,所以循环次数只能有1次,随着行数增加,次数就增加 for j in range(1,i+1): res = '%sx%s=%s' % (j,i,i*j) print(res, end='') print() #for v in range(1,10): # res = '%sx%s=%s' % (v,v,v*v) # print(res) '''