一阶段day5-if条件语句
1、
import是导入模块/包的关键字
random模块中能提供很多和随机数相关的功能
randint(m,n)随机产生一个在m、n之间的整数
import random
num=random.randint(0,9)
print(num)
Python中分支结构语句只有if语句,没有swith
if语句就是用来作判断的语句(需要在满足某个条件才执行某件事情的情况下使用)
2.if结构:
a.语法:
if 条件语句:
执行语句块
b.说明
if -> 是python的关键字
条件语句 -> 要求最终有一个值,可以是一个字面量,也可以是一个变量...一般情况下要求结果是个布尔值
: -> 固定写法
执行语句块 -> 可以是一行或者多行代码。这个代码中的代码必须和前面中的if保持一个缩进
c.执行过程: 先判断条件语句的结果是否为True,为True就执行冒号后面的执行语句块。
否则就不执行,直接执行if结构后面的其他语句。
d.注意:在满足条件后才执行的代码写在if中,不管条件是否成立都要执行的代码就写在if的外面。
但是如果有if,if里面至少要有一条语句
3.if-else结构
语法:
if 条件语句:
语句块1
else:
语句块2
执行过程: 先判断条件语句是否为True,如果为True就执行语句块1,否则执行语句块2
例如:判断字符串str里字母和数字情况
str='26hhj88(jk'
n1=random.randint(0,len(str)-1)
print(str[n1])
str1=str[n1]
if str1.isalpha(): #本行函数已自带判断Ture或False,如果是True执行本行代码,否则不执行;
print(str1,"是字母")
else:
print(str1,'不是字母')
4.if-elif-else结构
语法:
if 条件语句1:
语句块1
elif 条件语句2:
语句块2
else:
语句块3
执行过程: 先判断条件语句1是否成立,
如果成立直接性质语句块1,然后整个if结构结束。
如果不成立,再判断条件语句2是否成立。
如果条件语句2成立,就执行语句块2,然后整个if结构结束。
如果条件语句2不成立,执行语句块3
注意:if-elif-else结构中,elif可以根据情况有多个。else可以省略,如果有else,else写在最后
n2=random.randint(1,100)
print(n2)
if 0<=n2<=3:
print('幼儿')
elif 3<n2<13:
print('儿童')
elif 12<n2<19:
print('青少年')
elif 18<n2<41:
print('中年')
else:
print('老年')
练习:成绩(grade)和操评(score)
成绩大于4并且操评大于90----一等奖学金
成绩3.5-4,并且操评大于90----二等
3-3.5,大于85---三等
其他----没有
import random
grade=random.randint(3,5)
score=random.randint(80,100)
print(grade);
print(score);
if grade>=4 and score>=90:
print('一等奖学金')
elif 3.5<=grade and score>=90:
print('二等奖学金')
elif 3<=grade and score>=85:
print('三等奖学金')
else:
print('没有奖学金')
总结:涉及到取值范围类型时,取值范围由小到大;
即if取值范围最小,随后的elif取值范围逐渐加大,可以避免思维漏洞;
5.if嵌套
在分之结构中,我们可以if,elif或者else后面嵌套一个或者多个其他的if语句
练习:判断一个数是否是偶数,如果是打印'是偶数', 并且判断这个偶数能不能被4整除,如果能打印'是4的倍数'否则打印'不是4的倍数'。 如果是奇数,打印奇数的最后一位 / 判断最后一位是否是1
print('===============')
num = random.randint(0,100)
print(num)
if num & 1 == 0:
print('是偶数')
判断是偶数的时候,是否能够被4整除
if num % 4 == 0:
print('是4的倍数')
else:
print('不是4的倍数')
else:
print('是奇数')
last = num % 10 # 取个位上的数
print(last)
判断是奇数的时候最后一位是否是1
if last == 1:
print('最后一位是1')