生活中的判断案例:
生活中的判断几乎是无所不在的,我们每天都在做各种各样的选择,如果这,如果
那样….
判断的定义:
如果条件满足,才能做某件事
如果条件不满足,就做另外一件事情,或者什么也不做
正是有了判断,才使得程序世界丰富多彩,充满变化(程序不再从上到下的‘呆
板’执行了)
判断语句又被称为‘分支语句’,正是因为有了判断,才让程序有了很多的分支
if 判断语句的基本语法
if 要判断的条件:
条件成立时,要做的事情
注意:代码的缩进为一个 tab 键,或者四个空格(pycharm 自动帮我们增加)
在 python 开发中,Tab 和空格不要混用
if语句
if_1.py
# _*_ coding:utf-8 _*_
"""
file:if_1.py
date:2018-07-08 9:37 AM
author:wwy
desc:
"""
# 1.定义一个整数变量
age = 18
# 2.判断是否满18岁
if age >= 18:
# 3.如果满足18岁,就允许进入网吧
print '你已经成年,欢迎进入网吧'
运行结果:
if_2.py
# _*_ coding:utf-8 _*_
"""
file:if_2.py
date:2018-07-08 9:51 AM
author:wwy
desc:
"""
# 1.定义一个整数变量
age = 19
# 2.判断是否满18岁
if age >= 18:
# 3.如果满足18岁,就允许进入网吧
print '你已经成年,欢迎进入网吧' #if语句内部执行语句
print '~~~~~~~~~~~~~~~~~'
运行结果:
将age = 19 改为age = 13,运行结果为:
在if循环内部的语句,只有条件符合时才执行;在if循环外部的语句,不管是否符合条件都执行
else
else_1.py
# _*_ coding:utf-8 _*_
"""
file:else_1.py
date:2018-07-08 9:56 AM
author:wwy
desc:
"""
age=13
# 1.判断年龄是否满18岁
if age >= 18:
# 2.如果满足18岁,就允许进入网吧
print '你已经成年,欢迎进入网吧'
# 3.如果不满18岁,请回家写作业
else:
print '您未满18岁,请回家写作业'
运行结果:
将age = 13改为age = 19,运行结果为:
else_2.py
# _*_ coding:utf-8 _*_
"""
file:else_2.py
date:2018-07-19 12:37 PM
author:wwy
desc:
"""
age = int(raw_input('请输入你的年龄:'))
# 1.判断年龄是否满18岁
if age >= 18:
# 2.如果满足18岁,就允许进入网吧
print '你已经成年,欢迎进入网吧'
# 3.如果不满18岁,请回家写作业
else:
print '您未满18岁,请回家写作业'
运行结果:
逻辑运算
逻辑运算
在程序开发中,通常在判断条件时,会需要同时判断多个条件
只有多个条件都满足,才能够执行后续代码,这个时候需要使用到逻辑运算符
逻辑运算符可以把多个条件按照逻辑进行连接,变成更复杂的条件
python 中的逻辑运算符包括:与 and/或 or/非 not 三种
and
条件 1 and 条件 2
与/并且
两个条件同时满足,返回 True
只需有一个不满足,就返回 False
or
条件 1 or 条件 2
或/或者
两个条件只要有一个满足,返回 True
两个条件都不满足,返回 False
not
对一个条件取反:not 条件
逻辑运算.py
# _*_ coding:utf-8 _*_
"""
file:逻辑运算.py
date:2018-07-19 12:41 PM
author:wwy
desc:
"""
# 1.定义一个整数变量,要求年龄在0~80之间
age = int(raw_input('请输入你的年龄:'))
if age >=0 and age <=80:
print '年龄正确'
else:
print '年龄不正确'
# 2.定义两个整数变量,记录成绩,只要有一门成绩>60,就算通过
python_scorce = float(raw_input('请输入你python的成绩:'))
linux_scorce = float(raw_input('请输入你linux的成绩:'))
if python_scorce >= 60 or linux_scorce >= 60:
print '考试通过'
else:
print '请继续努力'
# 3.定义一个布尔型变量,判断是否只有本公司员工
is_employee = False
if not is_employee:
print '非本公司员工'
运行结果:
elif
在开发中,使用 if 可以判断条件
使用 else 可以处理条件不成立的情况
但是,如果希望再增加一些条件,条加不同,需要执行的代码也不同,就可以使用
elif
语法格式如下:
if 条件 1:
条件 1 满足执行的代码
elif 条件 2:
条件 2 满足时,执行的代码
else:
以上条件都不满足时,执行的代码
注意:
elif 和 else 都必须和 if 联合使用,而不能单独使用
可以将 if,elif 和 else 以及各自缩进的代码,看成一个完整的代码块
elif.py
# _*_ coding:utf-8 _*_
"""
file:elif.py
date:2018-07-19 12:45 PM
author:wwy
desc:
"""
# 定义holiday_name字符串变量记录节日的名称
holiday_name = str(raw_input('请输入节日:'))
if holiday_name == '情人节':
print '玫瑰花'
elif holiday_name == '520':
print 'MAC'
elif holiday_name == '六一':
print '零食大礼包'
elif holiday_name == '七夕':
print '海底捞'
elif holiday_name == '生日':
print 'Dior999'
else:
print '攒钱吃土'
运行结果:
if嵌套
if嵌套.py
# _*_ coding:utf-8 _*_
"""
file:if嵌套.py
date:2018-07-19 12:49 PM
author:wwy
desc:
火车安检
"""
# 1.定义布尔型变量has_ticket表示是否有车票
has_ticket = True
# 2.定义刀的长度
knife_length = 15
# 3.是否有车票,如果有,允许进入
if has_ticket:
print '车票检测通过'
# 4.判断刀的长度
if knife_length > 20:
print '长度%d:超过限定长度,不允许进入' % knife_length
else:
print '长度为%d:允许进入' % knife_length
else:
print '请先买票!!'
运行结果:
修改:
# 2.定义刀的长度
knife_length = 30
运行结果:
if综合案例.py
# _*_ coding:utf-8 _*_
"""
file:if综合案例.py
date:2018-07-19 12:55 PM
author:wwy
desc:
猜拳
"""
import random #调用电脑中的随机数
# 1.从控制台输入要出的拳:石头:1 剪刀:2 布:3
player = int(raw_input('请输入您想要的拳:'))
computer = random.randint(1,3)
print '玩家选择的是 %d ,电脑选择的是 %d ' %(player,computer)
# 2.比较胜负
if ((player == 1 and computer == 2 ) or
(player == 2 and computer == 3 ) or
(player == 3 and computer == 1)):
print 'player is win!'
elif player == computer:
print '无胜负,平局'
else:
print 'computer is win!'
运行结果: