循环和分支学习总结
一.流程控制 - 控制代码执行顺序
1.顺序结构:
代码从上往下依次执行,每条语句执行一次(默认)
2.分支结构:根据条件选择执行或者不执行部分代码。(if)
? a.if单分支结构 - 如果…就… ? 应用范围:满足条件执行代码,不满足条件不执行代码
? 语法:if 条件语句: ? 代码段
? 说明:if - 关键字,固定写法 ? 条件语句 - 可以是任何结构的表达式,包括:具体的数据、运算表达式(赋值运算例外)、以及赋值过的变量、函数表达式等 :- 固定写法 ? 代码段 - 从结构上就是和if保持一个缩进的一条或者多条语句(至少一条);逻辑上,代码段就是条件成立的时候才会执行的代码.
? b.if双分支结构 - 如果…就…否则
? 应用范围:满足条件执行,不满足条件执行另外的代码.
? 语法:if 条件语句: ? 代码段1(满足条件时执行的代码) ? else: ? 代码段2(不满足条件时执行的代码)
? c.if多分支结构 - 如果…就…如果…就…否则…
? 应用范围:满足不同的条件执行不同的代码.
? 语法:if 条件1:
? 代码段1
? elif 条件2:
? 代码段2
? elif 条件.:
? 代码段3
? …
? else:
? 代码段N
? 注:elif可以是任意多个;elif可有可无.
3.循环结构:让代码重复执行(for、while) 1.for循环
? 语法:for 变量 in 序列: ? 循环体
? 说明: ? for - 关键字,固定写法 ? 变量 - 有效变量名(变量的定义可有可无) ? in - 关键字,固定写法 ? 序列 - 容器型数据类型的数据,包括:字符串、列表、集合、元组、迭代器、生成器、range等 ? 循环体 - 需要重复执行的代码;对for保持一个缩进的一条或者多条语句.
? 执行过程:让变量去序列中取值,一个一个的取,取完为止;取一个值执行一次循环体.for循环的循环次数和序列中的元素个数有关.
? 2.range函数 - 创建整数等差数列 ? a.range(N) - 产生[0,N)的等差数列,差为1. ? b.range(M,N)- 产生[M,N)的等差数列,差为1. ? c.range(M,N,step)- 产生[M,N)的等差数列,差为step.
? 3.for循环的两个基本应用 ? a.累计求和: ? 定义变量保存结果,变量的初始值一般是0(求和)或者1(求乘积). ? 用循环一个一个的获取累计数据. ? 在循环体中将取到的每一个数据合并到结果对应的变量中. ? b.统计个数 ? 定义变量保存最后的个数,变量的初始值为0 ? 用循环获取统计对象. ? 遇到一个满足统计条件的数据统计个数加1
分支与循环作业
-
score = float(input('请输入成绩:'))
if score >= 60:
print('及格')
else:
print('不及格')
-
age = int(input('请输入年龄:'))
if 0< age < 18:
print('未成年')
elif age <= 150:
print('成年')
else:
print('这不是人!')
-
a = int(input('请输入整数:'))
b = int(input('请输入整数:'))
if (a-b) % 2 == 1:
print((a-b))
else:
print('a-b的结果不是奇数')
-
for x in range(3, 100, 3):
print(x)
-
for x in range(100, 200):
if (x % 10 % 3 == 0 and x % 10 != 0) or (x % 100 // 10 % 3 == 0 and x % 100 // 10 != 0):
print(x)
-
count = 0
for x in range(100, 200):
if x // 10 % 10 == 5:
count += 1
print(count)
-
for x in range(51, 150, 3):
if x % 5 != 0:
print(x)
-
result = 0
for x in range(51, 150, 3):
if x % 5 != 0:
result += x
print(result)
-
count = 0
for x in range(1, 100):
if (x % 10 % 2 == 0 and x % 10 != 0) and (x % 3 == 0):
count += 1
print(count)
|