顺序结构:代码从上往下依次执行,每条语句只执行一次。(默认)
分支结构:根据条件选择执行或者不执行部分代码。(使用 if )
age = int (input("请输入你的年龄:" ))if age >= 18: print ("成年")else:print("未成年")
循环结构:让代码重复执行( for 、while )
# for 循环for _ in rang(10): print("小周")
if 分支结构if 单分支结构 —— 如果。。。就。。。
语法:
if 条件语句 :代码段(满足条件才会执行的代码)
解决问题:满足条件执行某个操作,添加不满足的时候就不执行。
说明:
if —— 关键字,固定写法
条件语句 —— 可以任何有结果的表达式,包括:具体的数据、运算表达式(赋值运算除外)、已经赋值过的变量、函数调用表达式
: —— 固定写法
代码段 —— 从结构上就是和if保持一个缩进的一条或者多条语句(至少一条);
从逻辑上,代码段就是条件成立的时候才会执行的代码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-K5aobOq7-1645102561291)(F:截图/day041.png)]
#如果变量保存的数据是整数打印 '整型'num = 33if type(num) == int : print("整型")
# 根据分数打印'及格'score = float(input("请输入你的成绩:"))if score >= 60.0: print("成绩合格")
if 双分支结构 —— 如果…就…否则
应用场景:满足某个条件执行某个操作,条件不满足就执行另外的操作
语法:
if 条件语句:代码段1(满足条件需要执行的代码)else:代码段2(条件不满足的时候需要执行的代码)
#如果变量保存的数据是整数打印 '整型'num = 33if type(num) == int : print("整型")else: print("不是整型")
# 根据分数打印'及格'score = float(input("请输入你的成绩:"))if score >= 60.0: print("成绩合格")else: print("成绩不合格")
# 判断一个整数的奇偶性#方法一:num = int(input("请输入一个整数:"))if num % 2 == 0: print(num,"是偶数",sep='')else: print(num,"是奇数",sep='')#方法二:num = int(input("请输入一个整数:"))if num % 2:#余数为1 代表True, 余数为0 代表False print(num,"是奇数",sep='')else: print(num,"是偶数",sep='')
if 多分支结构 —— 如果…就… 如果…就… 如果…就…否则…
应用场景:根据不同的条件执行不一样的操作
语法:
if 条件1:代码段1elif 条件2:代码段2elif 条件3:代码段3...# elif 可以任意多个;else可以有也可以没有else:代码段N
# 根据分数打印奖学金金额 # 方法一:这个方法判断完成后,还会继续判断后面的操作# 主要解决:根据不同条件做不一样的事情score = float(input("请输入你的成绩:"))if score > 90: print(2000)if 85< score <=90: print(1000)if 75 < score <=85: print(500)if 60 <= score <75: print(200)else: print(0)# 方法二:# 主要解决:根据不同条件做不一样的事情,但是要求条件和条件之间的关系,一个条件成立另外的条件绝不成立的关系。score = float(input("请输入你的成绩:"))if 90 < score: print(2000)elif 85 < score: print(1000)elif 75 < score: print(500)elif 60 <= score: print(200)else: print(0)
for 循环语法:
for 变量 in 序列: 循环体 (需要执行的代码)
说明: for —— 关键字;固定写法
变量 —— 有效变量名(可以是已经定义过的,也可以是没有定义过的)
in —— 关键字;固定写法
序列 —— 容器型数据类型的数据;容器型数据类型包括:字符串、列表、字 典、元组、迭代器、生成器、range 等。
循环体 —— 和 for 保持一个缩进的一条或者多条语句;循环体就是需要重复执 行的代码。
执行过程:让变量去序列中取值,一个一个取,取完为止;取一个值就执行一次循环体
for 循环的循环次数和序列中元素的个数有关。
range 函数 —— 创建等差数列(整数)
range(N) --- # 产生[0,N)的等差数列,差是 1 range(M,N) --- # 产生[M,N)的等差数列,差是 1range(M,N,step) --- #产生[M,N)的等差数列,差是 steprange(1,10,2) ---> # 1,3,5,7,9
两个应用的场景:
① 累计求和:
#写代码求 1+2+3+...+100的和#方法一result = 0for i in range(1,101): result = result + i if i == 100 : print(result)#方法二result = 0 for x in range(1,101): result += xprint(result)
# 10的阶乘#方法一result = 1for i in range(1,11): result = result * i if i == 10 : print(result)#方法二result = 1for i in range(1,11): result *= iprint(result)
② 统计个数:
一
result = 1
for i in range(1,11):
result = result * i
if i == 10 :
print(result)
#方法二
result = 1
for i in range(1,11):
result *= i
print(result)
② 统计个数: