1. 流程控制
2. if else 分支 条件判断语句
判断语句
条件判断语句 if / if else / if elif elif else
python中不支持 switch…case 条件语句
if 条件判断 条件成立则向下执行if的子命令,不成立则忽略
数字跟字符串做比较 ==等于的结果为 False, !=的结果为True,其他运算则报错
if中只能用==作相等比较,不能使用等号=赋值运算符作相等比较
if 3 > 2:print(123)if 1 > 3:print(456)
if…else 判断条件
if 判断条件:
条件成立的代码
else:
条件不成立的代码(否则)
#判断一个数 是否能整除4和8numb =int(input('请输入一个数字:'))if numb % 4 == 0 and numb % 8 == 0:print('这个数能被4和8整除')else:print('这个数不能被4和8整除')#判断一个数 是否能被5和8整除,但是不能同时被5和8整除num =int(input('请输入一个数字2:'))if (num % 5 == 0 or num % 8 == 0) and (num % 40 != 0):print('这个数能被5或8整除,但不能被5和8整除')#判断一个年份是否是闰年,(条件: 年份能被4整除(普通闰年),但不能被100整除,但可以被400整除(称为世纪闰年))year = int(input('请输入一个年份'))if (year % 4 == 0 and year % 100 != 0 ) or (year % 400 == 0):print('这个年份是闰年')
3. if …elif…elif的使用
nub = int(input())# #多个if语句,语句和语句之间,不存在关联,各走各的# if 1 < nub < 3:# print('小于3')## if 3 < nub < 7:# print('小于7')## if 7 < nub < 9:# print('小于9')if 1 <= nub <= 3:print('小于或等于3')elif 3 <= nub <= 7: #不满足第一if的条件走一下一直走到满足if条件的语句print('小于或等于7')elif 7 <= nub <= 9:print('小于或等于9')else:print('请输入1-9的数字') #否则语句,判断不在if条件中的然后出此结果#if语句的嵌套#在python中,使用强制缩进来表示语句之间的结构a =input('是否同意请输入Y/N:')if a == 'Y':print('你已同意')next = input('下一步Y/N')if next == 'Y':print('恭喜你')else:print('你已取消')else:print('你已经取消同意')
4. if中的布尔隐性转化
if 4: #if 后面需要是一个布尔值,如果不是布尔值会自动转换成布尔值,大于或者等于1的数为True,只有0转换为Falseprint('hello')
5. 调试代码(Debug)
在pycharm中鼠标点击代码序号中间有个红色圆圈,点击之后加了个断点意思是代码运行到此处会停顿等待管理调试用户点击继续执行(Debug)
F8 Step Over下一步
6. pass语句
#pass 语句 ,没有实际意义,单纯用来占位,保证语句的完整性age = int(input('请输入你的年龄'))if age > 18: #if后面一定要接下一步的执行代码否则会报错,可以使用pass来占位保证完整性passprint('123')
7. 猜拳游戏
#if中只能用==作相等比较,不能使用等号=赋值运算符作相等比较#input是用来接收用户的输入数据#随机出一个数#需要用的随机数模块 randomplayer = int(input('猜拳游戏请输入 0.石头 1.剪刀 2.布:'))import random #导入模块/加载模块computer = random.randint(0,2) #random.randint(a,b)==> 能够生成[a,b]的随机整数print(computer)if player == computer:print('平局')elif player - computer == -1 or player - computer == 2:print('你赢了')else:print('你输了')
8. 随机数
import random #导入模块/加载模块a = random.randint(0,2) #random.randint(a,b)==> 能够生成[a,b]的随机整数,只输出一个随机数
