一、 if语句
1.什么时候用if语句
如果某一段代码需要在满足条件时才执行就使用if语句
2.怎么使用if语句
2.1 if单分支结构
满足条件执行操作,不满足不执行
语法:
if 条件语句:
代码块(if里面的代码)
其他代码块(if外面的代码)
说明:
if : 关键字:固定用法
条件语句 :除赋值语句外的表达式
: (冒号):固定写法
代码块 : 和if保持一个缩进的一条或者多条语句;需要满足条件才会执行的代码
执行过程
判断条件语句是否为True(如果不是布尔值就看条件语句结果的布尔值是否为True),为True就执行if里面的代码块,否则不执行。
练习:根据输入的数据值打印 偶数
num = int(input('请输入:'))
if num % 2 == 0:
print('偶数')
2.2 if 双分支结构
满足某个条件执行某个操作,不满足执行另一个操作。
语法:
if 条件语句:
代码块1(满足条件要执行的代码)
else:
代码块2(不满足的时候执行的代码)
执行过程:
判断条件语句是否为True(如果不是布尔值就看条件语句结果的布尔值是否为True),如果为True就执行代码块1,否则执行代码块2.
练习:根据年龄的值打印是否成年
age = int(input('请输入年龄:'))
if age < 18:
print('未成年')
else:
print('成年')
练习:判断一个三位数是否时水仙花数(水仙花数:各位数的立方和刚好等于这个数本身)
num = int(input('输入一个三位数'))
if (num % 10) ** 3 + (num // 10 % 10) ** 3 + (num // 100) ** 3 == num:
print('是水仙花数')
else:
print('不是水仙花数')
2.3 if 多分支结构
根据不同的条件执行不同的操作
语法:
if 条件语句1:
代码块1
elif 条件语句2:
代码块2
elif 条件语句3;
代码块3
………
else:
代码块n
执行过程:
先判断条件语句1是否为True,如果是,就执行代码块1,整个if语句直接结束;
否则判断条件语句2是否为True,如果是,就执行代码块2,整个if语句直接结束;
否则判断条件语句3是否为True,如果是,就执行代码块3,整个if语句直接结束;
以此类推,如果都不成立,就执行else里的代码块
练习:根据每个月的收入情况判断这个月的伙食
income = 1000
if income < 1000:
print('吃土')
elif income < 2000:
print('吃泡面')
else:
print('吃火锅')
3.python中的三目运算
3.1 C中的三目运算符 ? :
表达式1?表达式2:表达式3
判断表达式1的值是否为真,如果是,整个运算的结果就是表达式2的值,否则整个运算的结果是表达式3的值
int age = 18;
int result = age>=18?"成年":"未成年"
3.2 python中的三目运算符
是通过if-else来实现C中?:的功能
表达式1 if 表达式2 else 表达式3
先判断表达式1的值是否为True,如果是,整个语句的结果就是表达式2的值,否则就是表达式3的值
age = 18
result = '成年' if age >= 18 else '未成年'
print(result)
score = 18
result = '及格' if score >= 60 else "不及格"
print(result)
4. if 嵌套
在一个if语句中嵌套其他的if语句
练习:判断一个数是否偶数, 然后再判断这个数是否能被4整除
num = 22
if num % 2 == 0
if num % 4 == 0
print('能被4整除')
二、for循环
语法:
for 变量 in 序列:
循环体
说明:
for :关键字;固定写法
变量 :可以是定义过的变量,也可以是没定义过的变量(常用)
in : 关键字;固定写法
序列 : python中容器型数据类型的数据,如:字符串、列表、元组、集合、字典、迭代器、生成器、range等
;(冒号):固定写法
循环体 : 和for保持一个缩进的一条或者多条语句;需要重复执行
执行过程:
让变量取序列中取值,一个一个取,每取一个值,执行一次循环体。for循环的循环次数和序列中的元素个数一致
for x in 'abc':
print('===')
1.range函数
产生数字序列的函数
range(N) : 产生一个0到N-1的数字序列 (N是任意正整数)
range(M,N) : 产生一个M到N-1的数字序列 (M、N都是整数,N必须大于M)
range(M,N,step) : 从M开始每次增加step产生下一个数字,到N前为止
练习:计算1+2+3+4+……+100的和
b = 0
for a in range(101):
b += a
print(b)
练习:统计100~300中能被3整除但不能被4整除的数的个数
count = 0
for a in range(100, 301):
if a % 3 == 0 and a % 4 != 0:
count += 1
print(count)
三、while 循环
语法:
while 条件语句:
循环体
说明:
while :关键字;固定写法
条件语句:和if一样,不是赋值语句就可以
:(冒号):固定写法
循环体:和while保持一个缩进的一条或者多条语句,需要重复执行的代码
执行过程:
先判断条件语句是否为True,若为True,就执行循环体,执行完循环体再判断条件语句是否为True,以此类推,如果判断条件语句结果为False,循环结束
练习1:不断从控制台输入数字,直到输入的数字是0停止
num = int(input('请输入:'))
while num != 0:
num = int(input('错误,请重新输入:'))
print('正确')
四、break、continue、else
1.continue
continue是循环体中关键字,只能在循环体中使用。
当执行循环体时遇到continue,直接进入下一次循环的判断。
for _ in range(5):
print('====')
continue
print('++++')
for x in range(10):
if x % 2:
continue
print(x)
2.break
也是循环体中的关键字,只能在循环体中使用
当执行循环体时遇到break,整个循环直接结束
for _ in range(5):
print('====')
break
print("++++")
python中正确的打开方式
while True
需要重复执行的操作
if 循环结束的条件:
break
3.else
python中的for和while的完整结构是:for-else结构和while-else结构
1. for-else结构
for 变量 in 序列:
循环体
else:
代码块
2. while-else结构
while 条件语句:
循环体
else:
代码块
遇到break不会执行else。