2.1 if
条件为真时,执行条件代码,条件为假时,跳过条件代码,继续执行。注意:条件为假仅仅少了条件代码那一部分,其他的没有少
2.2 if的基本格式
if 判断条件:
条件为真时的代码
其他代码
2.3 if-else语句(注意看:if 和 else只会执行一个)
if 判断条件:
条件为真时的代码
else:
条件为false的代码
其他程序
2.4 if-elif 语句
if 判断条件1:
条件1成立时需要执行的代码
elif 判断条件2:
条件1不成立,条件2成立时需要执行的代码
else:
上面判断条件都不成立需要执行的代码
其他代码
举个给成绩分级的例子:
#if-elseif语句,:不能忘记
print('--成绩查询开始--')
Score = float(input('请输入您的分数:'))#类型转换
if Score >= 90:
print('您的成绩为优秀')
elif Score >= 80:
print('您的成绩为良好')
elif Score >=60:
print('您的成绩为及格')
else:
print('您的成绩为不及格')
print('--成绩查询结束--')
(1)可以添加好多个elif,最后一个是else即可。
2.5 if 的嵌套
(1)是在if里面再加上if
(2)只有外层的条件成立,才会判断内层的条件
(3)基本格式:
if 判断条件1:
条件1成立时需要执行的代码
if 条件2:
条件1成立,判断条件2成立时需要执行的代码
else:
条件1成立,条件2不成立时需要执行的代码
else:
条件1不成立需要执行的代码
(4)实际例子:能否做车去目的地
#有钱有座位就坐着到目的地,否则走路到达
money = float(input('请输入您拥有的零钱:'))
if money >= 2:
print('恭喜,您可以上车了')
seat = int(input('车上空位数为:'))
if seat >= 1:
print('您可以坐下了')
else:
print('抱歉,您只能站在车上')
else:
print('抱歉,您只能走路去目的地')
print('--测试结束--')
2.6 三目运算
(1)格式:(这是if-else的变形)
变量 = 表达式1 if 判断条件 else 表达式2
(2)例子:(输出两数之差的绝对值)
a = int(input('请输入一个数字:'))
b = int(input('请输入一个数字:'))
result = a - b if a > b else b - a
result
2.7 while 循环
(1)条件成立,则重复执行,直到条件不成立
(2)例:操场跑10圈
i = 0
while i < 10:
i = i + 1
print(f'现在是第{i}圈')
print('跑完了,真棒')
(3)例:1-100的累加和
sum = 0
i = 0
while i < 100:
i = i + 1#i += 1
sum = sum + i#sum +=i
print(sum)
(4)例:1-100的偶数和
sum = 0
i = 0
while i <= 100:
if i % 2 == 0:#断是否为偶数
sum = sum + i
i = i + 1
print(sum)
(5)例:猜拳游戏
import random
while True:
#用户输入自己的出拳
user = int(input('请输入你要出的拳:'))
#电脑随机出拳,产生1到3之间的随机数
cp = random.randint(1,3)
if user == 1 and cp == 2:
print('电脑出剪刀,你赢了')
elif user == 2 and cp == 3:
print('电脑出布,你赢了')
elif user == 3 and cp == 1:
print('电脑出石头,你赢了')
elif user == 3 and cp == 2:
print('电脑出剪刀,你弱爆了')
elif user == 1 and cp == 3:
print('电脑出布,你弱爆了')
elif user == 2 and cp == 1:
print('电脑出石头,你弱爆了')
else:
print('平局,不要走,大战三百回合!')
2.8 Whlie 的循环嵌套
(1)格式
while 判断条件1:
条件1成立时需要执行的代码
while 判断条件2:
条件1成立,条件2成立时需要执行的代码
其他代码
(2)例子:操场跑五圈,每跑一圈做五个俯卧撑
m = 0 #记录圈数
print('跑步开始---')
while m < 5:
m = m + 1
print(f'我已经跑了{m}圈')
n = 0 #记录俯卧撑
while n < 3:
n = n + 1
print(f'我已经做了{n}个俯卧撑')
print('跑步结束')
2.9 for循环。(又叫for遍历,会把字符串或者列表中的数据全部取出)
(1)格式
for 变量 in 列表或者字符串之类可以迭代的对象
代码块
例:
#可以把列表或者字符串遍历一遍
for i in 'hello':
print(i)
(2)range(n) 会生成[0,n)的数据序列,不包括n
range(a,b,step) step决定步长
(3)for 循环嵌套
for i in range(5):#range(5)表示0-4
代码
for j in range(3):#表示0-2
代码
2.10 for 循环嵌套应用
打印正方形
n = int(input('请输入正方形边长:'))
for i in range(n):
for j in range(n):
print('*',end = '')#不换行,即实现横向打印
print()#实现换行
2.11 break 和continue
(1)break 和continue 是python的两个关键字,且只能用在循环中。
(2)break表示循环终止执行,continue表示结束本次循环,判断下一次循环是否执行
(3)例子:有五个苹果,①吃了三个苹果之后,吃饱了剩下的不吃了;②吃了三个苹果之后,第四个有虫子就不吃了,然后吃第五个
①
n = 5#总共5个苹果
i = 1#吃的苹果个数
while i < n:
if i == 4:
print('吃饱了,不吃了')
break
print(f'吃了{i}个苹果')
i = i + 1
②
n = 5#总共5个苹果
i = 0#吃的苹果数
for i in range(1,6):
if i == 4:
print(f'第{i}个苹果有虫子,气死我了,不吃了')
continue
print(f'吃了第{i}个苹果')
i = i + 1
2.12 循环else结构
例子:有一个字符串'hello python',想要判断其中有没有'p'这个字符,如果包含就输出,如果没有就输出不含p
for i in 'hello python':
if i == 'p':#判断p是否在字符串里面
print('有个p')
else:#可以把这个else去掉
print('p都没有')
else:
print('over')
代码的结果