总结
if多分支结构
- 1.if-elif-else
应用场景:针对不同的条件实现不同的操作。(不同的条件之间满足:如果其中一个条件已经满足了,就没有再判断其他条件的必要)
语法:
if 条件语句1:
代码段1
elif 条件语句2:
代码段2
elif 条件语句3:
代码段3
…
else:
代码段N
注意:后面的条件是在前面的条件不成立的前提下进行判断的
# symbol为+时就+2,为-时就-2,为*时就*2,为%时就%2,否则不能操作
symbol = '%'
num = 20
if symbol == '+':
num += 2, print(num)
elif symbol == '-':
num -= 2, print(num)
elif symbol == '*':
num *= 2, print(num)
elif symbol == '%':
num %= 2, print(num)
else:
print('不能操作')
if嵌套和三目运算符
-
-
if嵌套
在if语句中有其他的if语句
-
if 条件语句:
if 条件语句:
代码段
else:
代码段
else:
代码段
#练习:如果num是奇数就打印奇数,否则打印偶数,如果个位数为0,打印10的倍数
num = 51
if num % 2 == 0:
print('偶数')
if num % 10 == 0:
print('10的倍数')
else:
print('奇数')
- 2.三目运算符
1)C的三目运算符:
表达式1?表达式2:表达式3 - 判断表达式1的值是否为真,如果是整个运算的结果是表达式2,否则整个运算结果是表达式3
int result = 10>20?30:40
printf(&result)
2)python的三目运算符
表达式2 if 表达式1 else 表达式3 - 判断表达式1的值是否为True,如果是整个运算的结果是表达式2,否则整个运算结果是表达式3
相当于
if 100 > 20:
result = 30
else:
result = 40
print(result)
# 练习:根据年龄值打印是否成年
age = 17
result = '成年' if age >= 18 else '未成年'
print(result)
for循环
- 1.for循环
语法:
for 变量 in 序列:
循环体
说明:
1)for - 关键字;固定写法
2)变量 - 和定义变量的时候变量名的要求和规范一样;(如果这个变量在循环体中不使用,变量名可以用_代替)
3)in - 关键字;固定写法
4)序列 - python中容器型数据类型,例如:字符串、列表、元组、集合、字典、迭代器、生成器、range等…
5) : - 固定写法
6)循环体 - 和for保持一个缩进的一条或者多条语句;需要重复执行的代码
执行过程
让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体。
(for循环的执行次数,看序列中元素的个数)
- 2.range函数 - 产生指定范围的数字序列
range(N) - 产生一个[0,N)的数字序列,例如:range(4)- 产生0,1,2,3
range(M, N) - 产生一个[M, N)的数字序列(M<N,并且M和N都是整数);
range(M,N,step) - 产生一个[M, N)的数字序列,每次数值增加step;例如range(-3, 3, 2)
# 练习1: 计算1+2+3+4....+100的和
sum = 0
for x in range(1, 101):
sum += x
print(sum)
# 练习2.统计1000以内能够被3整除的数的个数
# 方法一
result = 0
for x in range(1000):
if x % 3 == 0:
result += 1
print(result)
# 方法二
y = 0
for x in range(0, 1000, 3):
y += 1
print('ww', y)
# 练习3:打印1000以内能被3整除并且个位数是2的所有数
for x in range(1000):
if x % 3 == 0 and x % 10 == 2:
print(x, end=' ')
while循环
- 1.while循环
语法:
while 条件语句:
循环体(代码)
说明:
1)while - 关键字:固定写法
2)条件语句 - 任何有结果的表达式都可以(赋值语句不行)
3) : - 固定写法
4) 循环体 - 和while保持一个缩进的一条或者多条语句;需要重复执行的代码
执行过程:
先判断条件语句是否为True,如果是就执行循环体,执行完再判断条件是否为True,一直循环,直到条件语句为False
# 练习:打印五次'hello world'
x = 0
while x < 5:
print('hello world')
x += 1
- 2.for循环和while循环的选择
如果循环次数确定 - for循环
如果循环次数不确定 - while循环
x = input('请输入:')
while x != '0':
x = input('请输入:')