python初学火车座位判断_Python学习第三课 判断(if)语句
判断(if)语句
目标
● if 语句体验
● if 语句进阶
● 综合应用
01. if 语句体验
1.1 if 判断语句基本语法
在Python中,if 语句就是用来进行判断的,格式如下:
if 要判断的条件:
条件成立时,要做的事情
…
注意
代码缩进为 tab键,或者是四个空格
● 在Python开发中,Tab键和空格不要混用
1.2 判断语句演练——判断年龄
需求
1.定义一个整数变量记录年龄
2.判断是否慢18岁(>=)
3.如果满18岁,允许进网吧嗨皮
# 1.定义一个整数变量记录年龄
age = 18
# 2.判断是否慢18岁(>=)
if age >= 18:
print("你已经成年,可以进网吧!")
# 3.如果满18岁,允许进网吧嗨皮
注意
● if 语句以及缩进部分为整个代码块
1.3 else处理条件不满足的情况
思考:在使用if判断时,只能做到满足条件时要做的事情。那如果需要在不满足条件时,做某些事情,该如何做?
答案:格式如下:
if 要判断的条件:
条件满足时,要做的事情
…
else:
条件不满足时,要做的事情
…
注意
● if 和 else 语句以及各自缩进的部分共同是一个完整的代码块
1.4 判断语句演练——判断年龄的改进
需求
1、输入用户年龄
2、判断是否慢18
3、满18,允许进网吧
4、不满18,提示回家
TIPS:选中要添加注释的文本,Ctrl+/ 可以同时为所有文本逐行添加#注释
# 1、输入用户年龄
age = int(input("请输入年龄:"))
# 2、判断是否慢18
if age >= 18:
# 3、满18,允许进网吧
print("你已成年,可以进网吧!")
else:
# 4、不满18,提示回家
print("未成年回家写作业!")
02.逻辑运算
● 在程序开发中,通常在判断条件时,会需要同时判断多个条件
● 只有多个条件都满足,才能够执行后续代码,这个时候需要使用到逻辑运算符
● 逻辑运算符可以吧多个条件按照逻辑进行连接,变成更复杂的条件
● Python中的逻辑运算符有:与and/或or/非not三种
2.1 and
条件1 and 条件2
● 与/并且
● 两个条件同时满足,返回TRUE
● 只要有一个不满足,返回false
条件1
条件2
结果
成立
成立
成立
成立
不成立
不成立
不成立
成立
不成立
不成立
不成立
不成立
2.2 or
条件1 or 条件2
● 或/或者
● 两个条件只要有一个满足,返回TRUE
● 两个条件均不成立,返回false
条件1
条件2
结果
成立
成立
成立
成立
不成立
成立
不成立
成立
成立
不成立
不成立
不成立
2.3 not
not 条件
● 非/不是
条件
结果
成立
不成立
不成立
成立
逻辑运算演练
1、练习1:定义一个整数变量age,编写代码判断年龄是否正确
● 要求年龄在0~100之间
# 1、练习1:定义一个整数变量age,编写代码判断年龄是否正确
age = int(input("请输入年龄:"))
# 要求年龄在0~100之间
if age >= 0 and age <=100:
print("年龄正常!")
else:
print("年龄不正常!")
2、练习2:定义两个整数变量python_score,c_score,编写代码判断成绩
● 要求只要有一门成绩>60就算合格
# 2、练习2:定义两个整数变量python_score,c_score,编写代码判断成绩
python_score = int(input("请输入Python成绩:"))
c_score = int(input("请输入C语言成绩:"))
# 要求只要有一门成绩>60就算合格
if python_score > 60 or c_score > 60:
print("考试通过!")
else:
print("考试失败!")
3、练习3:定义一个布尔型变量is_employee,编写代码判断是否为本公司员工
● 如果不是不允许入内
# 3、练习3:定义一个布尔型变量is_employee,编写代码判断是否为本公司员工
is_employee = True
# 如果不是不允许入内
if not is_employee:
print("非本公司员工,请勿入内!")
03.if 语句进阶
3.1 elif
● 在开发中,使用 if 可以判断条件
● 使用else可以处理条件不成立的情况
● 但是,如果希望再增加一些条件,条件不同,需要执行的代码也不同时,就要用到elif
● 语法格式如下:
if 条件1:
条件1满足时执行的代码
…
elif 条件2:
条件2满足时,执行的代码
…
elif 条件3:
条件3满足时,执行的代码
…
else:
以上条件都不满足时,执行的代码
…
● 对比逻辑运算符的代码
if 条件1 and 条件2:
条件1满足且条件2满足执行的代码
…
注意
1、elif 和else 都必须和if连用,而不能单独使用
2、可以将if、elif、else以及各自缩进的代码,看成一个完整的代码块
elif 演练——女朋友的节日
需求:
1、定义holiday_name字符串变量记录节日名称
2、如果是情人节应该买玫瑰/看电影
3、如果是平安夜应该买苹果/吃大餐
4、如果是生日应该买蛋糕
5、其他的日子每天都是节日啊。。。
holiday_name = str(input("请输入节日:"))
if holiday_name == "情人节":
print("买玫瑰")
print("看电影")
elif holiday_name == "平安夜":
print("买苹果")
print("吃大餐")
elif holiday_name == "生日":
print("买蛋糕")
else:
print("每天都是节日。。。")
3.2 if 的嵌套
elif的应用场景是:同时判断多个条件,所有条件是平级的
● 在开发中,使用if进行条件判断,如果希望在条件成立的执行语句中再添加条件判断,就可以使用if嵌套
● if的嵌套的应用场景是:在之前条件满足的前提下,再增加额外的判断
● if的嵌套的语法格式,除了缩进之外和之前没有区别
● 语法格式如下:
if 条件1:
条件1满足执行的代码
…
if 条件1基础上的条件2:
条件2满足时,执行的代码
…
# 条件2不满足的处理
else:
条件2不满足时,执行的代码
#条件1不满足时的处理
else:
条件1 不满足时,执行的代码
…
if嵌套演练——火车站安检
需求:
1、定义布尔型变量has_ticket 表示是否有车票
2、定义整形变量knife_length表示刀的长度,单位:厘米
3、首先检查是否有车票,如果有允许进行安检
4、过安检时,检查刀的长度,判断是否超过20厘米
● 超过20厘米,提示刀的长度,不允许上车
● 不超过,安检通过
5、如果没有车票,不允许进门
has_ticket = True
if has_ticket:
print("车票检查通过,准备开始安检!")
knife_length = int(input("请输入刀的长度:"))
if knife_length >= 20:
print("不能通过安检!")
else:
print("安检通过!")
else:
print("没有车票,不允许进入!")
04.综合运用——石头剪刀布
4.1 基础代码实现
目标
1、强化多个条件的逻辑运算
2、体会import 导入模块(“工具包”)的使用
需求
1、从控制台输入玩家1要出的拳:石头(1)/剪刀(2)/布(3)
2、从控制台输入玩家2要出的拳:石头(1)/剪刀(2)/布(3)
3、比较胜负
序号
规则
1
石头 胜 剪刀
2
剪刀 胜 布
3
布 胜 石头
# 从控制台输入玩家1要出的拳-石头(1)/剪刀(2)/布(3)
player1 = int(input("请输入玩家1要出的拳-石头(1)/剪刀(2)/布(3):"))
# 从控制台输入玩家1要出的拳-石头(1)/剪刀(2)/布(3)
player2 = int(input("请输入玩家2要出的拳-石头(1)/剪刀(2)/布(3):"))
print("玩家1选择的拳是 %d - 玩家2选择的拳是 %d " % (player1,player2))
# 比较胜负
if ((player1 == 1 and player2 == 2)
or (player1 == 2 and player2 == 3)
or (player1 == 3 and player2 == 1)):
print("玩家1获胜!")
elif ((player1 == 1 and player2 ==3)
or (player1 == 2 and player2 == 1)
or (player1 == 3 and player2 == 2)):
print("玩家2获胜!")
else:
print("平局!")
4.2 随机数的处理
● 在Python中,要使用随机数,首先需要导入随机数的模块——“工具包”
import random
● 导入模块后,可以直接在模块名称后面敲一个 . ,然后按Tab键,会提示该模块中包含的所有函数
● random.randint(a,b),返回【a,b】之间的整数,包含a,b
● 例如:
random.randint(12,20)#生成的随机数n:12<=n<=20
random.randint(20,20)#结果永远是20
random.randint(20,18)#该语句是错误的,下限必须小于上限
4.3 代码改进
使玩家2 的出拳由电脑随机给出
# 导入随机工具包
import random
# 从控制台输入玩家1要出的拳-石头(1)/剪刀(2)/布(3)
player1 = int(input("请输入玩家1要出的拳-石头(1)/剪刀(2)/布(3):"))
# 从控制台输入玩家1要出的拳-石头(1)/剪刀(2)/布(3)
player2 = random.randint(1,3)
print("玩家1选择的拳是 %d - 玩家2选择的拳是 %d " % (player1, player2))
# 比较胜负
if ((player1 == 1 and player2 == 2)
or (player1 == 2 and player2 == 3)
or (player1 == 3 and player2 == 1)):
print("玩家1获胜!")
elif ((player1 == 1 and player2 == 3)
or (player1 == 2 and player2 == 1)
or (player1 == 3 and player2 == 2)):
print("玩家2获胜!")
else:
print("平局!")
python初学火车座位判断_Python学习第三课 判断(if)语句相关推荐
- 以下()不是python的数值运算操作符_Python学习(三)——Python的运算符和数值、字符的类中方法...
Python开发IDE PyCharm,eclipse PyCharm的基础用法 全部选中后 Ctrl+?全部变为注释 运算符 结果为值的运算符 算术运算符: + - * / % // ** 赋值运算 ...
- python初学火车座位判断_初学Python实现学校图书馆座位自动抢座预约
初学Python实现学校图书馆座位自动抢座预约 初学Python实现学校图书馆座位自动抢座预约 最近突然有个想利用python爬取学校图书馆预约的想法(因为图书馆单人的座位很难抢)可是没学过pytho ...
- python 画在同一坐标轴_Python学习第95课-多个数据在同一个坐标轴画图叠加
[每天几分钟,从零入门python编程的世界!] 我们已经学过了绘制折线图.柱状图.直方图.散点图.饼状图和堆栈图. 这节课我们学习如何把多个数据画图叠加,这种图形可以用作多组数据的对比. 下面我们通 ...
- python画图坐标重叠怎么办_Python学习第95课-多个数据在同一个坐标轴画图叠加
[每天几分钟,从零入门python编程的世界!] 我们已经学过了绘制折线图.柱状图.直方图.散点图.饼状图和堆栈图. 这节课我们学习如何把多个数据画图叠加,这种图形可以用作多组数据的对比. 下面我们通 ...
- python编写程序输出诗句_Python学习笔记(一)-- print语句
print语句可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print 'hello, world' 注意: 1.当我们在Python交 ...
- python解包的概念_Python学习第176课——tar解包和压缩
上节我们学习了tar命令打包和查看tar文件中的内容,这节我们继续熟悉tar解包以及其他操作. 上节我们把桌面上的linux文件夹里面的东西打了一个包,打包后的文件也在桌面上,叫tar_linux.t ...
- 画【Python折线图】的一百个学习报告(三、自动生成单一数据折线图)
画[Python折线图]的一百个学习报告(三.自动生成单一数据折线图) 目录 画[Python折线图]的一百个学习报告(三.自动生成单一数据折线图) 前言 学习环境 探究目标 分析过程 实践过程 成果 ...
- 画【Python折线图】的一百个学习报告(三、设置全局 Label 颜色)
画[Python折线图]的一百个学习报告(三.设置全局 Label 颜色) 目录 画[Python折线图]的一百个学习报告(三.设置全局 Label 颜色) 前言 学习环境 探究目标 分析过程 实践过 ...
- Python学习第三课-基本数据类型
Python学习第三课-基本数据类型 一.基本概念 1.1表达式 1.2语句 1.3程序 1.4函数 内置函数 自定义函数 参数 返回值 二.标识符 2.1 关键字 2.2标识符概念 驼峰命名法 下划 ...
最新文章
- false sharing
- activeMq-2 高可用以及集群搭建
- 微软4年后重登市值第一,纳德拉如何做到的?
- MySql5.6版修改用户登录密码
- idea安装activiti流程设计器_整合Activiti6.0流程设计器 | 字痕随行
- ArcGIS10.2不能打开10.6版本创建的镶嵌数据集
- map 详解(C++)
- 局域网监控软件:让员工上网行为规范形成自觉
- oralce 12c集群 ora-01033
- thymeleaf中三元运算符嵌套写法
- ArcGIS Pro数据加载学习总结
- 线性代数和微积分 1.1微分方程概述
- 哈希表与哈希(Hash)算法
- springboot+jsp电子元件仓库管理系统javaweb
- 4rx4 服务器内存2rx4_【不是大神的科普】关于ECC内存和REG内存的一些科普
- Coursera SQL for Data Science - Notes
- 计算统一社会信用代码的校验码(Lua)
- 资深架构师助你上手软件领域驱动设计 DDD
- 高校俱乐部参会成员餐票领取安排及第二届研讨会邀请信
- 软文发稿是怎么发的?
热门文章
- GPU云服务器是什么?谷歌宣布将要推出GPU云服务器
- python socket编程详细介绍
- PID控制方法及C语言其实现
- 警告:‘xxxx’ 将随后被初始化
- C# socket编程第二篇
- J2EE Architecture(4)
- mysql开启perform sch_MySQL Performance schema设置的一些建议选项
- 计算机期末考试操作题简单,计算机期末考试操作题及答案计算机期末考试操作题及答案.doc...
- ipone android 省流量,总担心 iPhone 偷跑流量如何解决?iPhone 如何设置可以节省流量?...
- ug中文字大小设置_UG与AutoCAD的数据转换,原来还有这么简单的方法