A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 小江哥 于 2018-6-6 11:52 编辑

条件语句和循环语句
条件语句

循环语句

条件语句
01.开发中的应⽤场景条件语句在开发中主要⽤于进⾏ 逻辑判断⽣活中的判断⼏乎是⽆所不在的,我们每天都在做各种各样的选择,如果这样?如果那样?……



02.if 语句体验 2.1if 判断语句基本语法 Python 中,if 语句 就是⽤来进⾏条件判断的,格式如下:

if 要判断的条件:条件成⽴时,要做的事情……
代码的缩进为⼀个 tab 键,或者 4 个空格

2.2判断语句演练 ——
判断年龄需求
1.定义⼀个整数变量记录年龄
2.判断是否满 18 岁 (>=
3.如果满 18 岁,允许进⽹吧嗨⽪

# 1. 定义年龄变量
age = 18
# 2. 判断是否满 18 if age >= 18:

print("可以进⽹吧嗨⽪……")

# 3. 思考!- ⽆论条件是否满⾜都会执⾏print("这句代码什么时候执⾏?")


2.3else 处理条件不满⾜的情况思考在使⽤ if 判断时,只能做到满⾜条件时要做的事情。那如果需要在 不满⾜条件的时候,做某些事情,该如何做呢?
答案  else ,格式如下:
if 要判断的条件:条件成⽴时,要做的事情…… else:条件不成⽴时,要做的事情……

2.1 判断语句演练 —— 判断年龄改进需求
1. 输⼊⽤户年龄
2. 判断是否满 18 >=
3. 如果满 18 岁,允许进⽹吧嗨⽪
4. 如果未满 18 岁,提示回家写作业

# 1. 输⼊⽤户年龄age = int(input("今年多⼤了?"))
# 2. 判断是否满 18
if age >= 18:print("可以进⽹吧嗨⽪……") else:print("你还没⻓⼤,应该回家写作业!")
# 3. 思考!- ⽆论条件是否满⾜都会执⾏print("这句代码什么时候执⾏?")
注意:将数字型数据直接作为判断条件时,⾮0数即为True, 0False
um = int(input("请输⼊数字:")) if num:print("数字⾮0") else:print("数字为0")
03.逻辑运算在程序开发中,执⾏结果 可能和 多个条件有关⽐如 多个条件都成⽴才能执⾏,或者有⼀个条件成⽴就可以执⾏,这时就需要使⽤ 逻辑运算符逻辑运算符 可以把 多个条件 按照 逻辑 进⾏ 连接,变成 更复杂的条件Python 中的 逻辑运算符 包括:与 and/或 or/⾮not 三种

3.1  and
条件1 and 条件2
与/并且两个条件同时满⾜,返回 True只要有⼀个不满⾜,就返回 False

条件 1        条件 2        结果成⽴        成⽴        成⽴成⽴        不成⽴        不成⽴

3.2  or

条件1 or 条件2

或/或者两个条件只要有⼀个满⾜,返回 True两个条件都不满⾜,返回 False
条件 1        条件 2        结果 成⽴        成⽴        成⽴   成⽴        不成⽴        成⽴ 不成⽴        成⽴        成⽴ 不成⽴        不成⽴        不成⽴

3.3  not
not 条件
⾮/不是 条件        结果成⽴        不成⽴不成⽴        成⽴

逻辑运算演练
1.练习1: 定义⼀个整数变量 age ,编写代码判断年龄是否正确要求⼈的年龄在 0-120 之间2.练习2: 定义两个整数变量 python_score c_score ,编写代码判断成绩要求只要有⼀⻔成绩 > 60 分就算合格3.练习3: 定义⼀个布尔型变量 is_employee ,编写代码判断是否是本公司员⼯如果不是提示不允许⼊内
答案 1
# 练习1: 定义⼀个整数变量 age,编写代码判断年龄是否正确age = 100 # 要求⼈的年龄在 0-120 之间if age >= 0 and age <= 120:print("年龄正确") else:print("年龄不正确")
答案 2
# 练习2: 定义两个整数变量 python_scorec_score,编写代码判断成绩python_score = 50c_score = 50 # 要求只要有⼀⻔成绩 > 60 分就算合格if python_score > 60 or c_score > 60:print("考试通过") else:print("再接再厉!")
答案 3
# 练习3: 定义⼀个布尔型变量 `is_employee`,编写代码判断是否是本公司员⼯is_employee = True # 如果不是提示不允许⼊内if not is_employee:

print("⾮公勿内")


04.if进阶4.1  elif  ⼀对 if else 可以让代码执⾏出 两种不同的结果但开发中,可能希望 并列的执⾏出多种结果,这时就可以使⽤ elif语法格式如下:

if 条件1:条件1满⾜执⾏的代码……elif 条件2:条件2满⾜时,执⾏的代码……elif 条件3:条件3满⾜时,执⾏的代码…… else:以上条件都不满⾜时,执⾏的代码……
elif 演练 —— ⼥友的节⽇需求1.定义 holiday_name 字符串变量记录节⽇名称2.如果是 情⼈节 应该 买玫瑰/看电影3.如果是 平安夜 应该 买苹果/吃⼤餐4.如果是 ⽣⽇ 应该 买蛋糕5.其他的⽇⼦每天都是节⽇啊……

holiday_name = "平安夜"

if holiday_name == "情⼈节":print("买玫瑰")print("看电影")elif holiday_name == "平安夜":print("买苹果")print("吃⼤餐")elif holiday_name == "⽣⽇":print("买蛋糕") else:print("每天都是节⽇啊……")

注意1.  elif else 都必须和 if 联合使⽤,⽽不能单独使⽤2.elif 强调的是 并列的多种结果,⽽ 逻辑运算符 强调的是 与某个结果有关的 多个条件

4.2  if 的 嵌 套



在开发中,使⽤ 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 厘⽶,提示⼑的⻓度,不允许上⻋ 如果不超过 20 厘⽶,安检通过5.如果没有⻋票,不允许进⻔
# 定义布尔型变量 has_ticket 表示是否有⻋票has_ticket = True # 定义整数型变量 knife_length 表示⼑的⻓度,单位:厘⽶knife_length = 20 # ⾸先检查是否有⻋票,如果有,才允许进⾏ 安检if has_ticket:print("有⻋票,可以开始安检...") # 安检时,需要检查⼑的⻓度,判断是否超过 20 厘⽶# 如果超过 20 厘⽶,提示⼑的⻓度,不允许上⻋if knife_length >= 20:print("不允许携带 %d 厘⽶⻓的⼑上⻋" % knife_length)# 如果不超过 20 厘⽶,安检通过else:print("安检通过,祝您旅途愉快……") # 如果没有⻋票,不允许进⻔else:print("⼤哥,您要先买票啊")

05.综合应⽤—— ⽯头剪⼑布⽬标

1.强化 多个条件 的 逻辑运算

2.体会 import 导⼊模块(“⼯具包”)的使⽤需求1.从控制台输⼊要出的拳 —— ⽯头(1)/剪⼑(2)/布(3

2.电脑 随机 出拳 —— 先假定电脑只会出⽯头,完成整体代码功能3.⽐较胜负 序号        规则1        ⽯头 剪⼑2        剪⼑ 3         ⽯头 5.1基础代码实现 假定电脑就只会出⽯头,完成整体代码功能

# 从控制台输⼊要出的拳 —— ⽯头(1)/剪⼑(2)/布(3player = int(input("请出拳 ⽯头(1)/剪⼑(2)/布(3):")) # 电脑 随机 出拳 - 假定电脑永远出⽯头computer = 1 # ⽐较胜负# 如果条件判断的内容太⻓,可以在最外侧的条件增加⼀对⼤括号# 再在每⼀个条件之间,使⽤回⻋,PyCharm 可以⾃动增加 8 个空格if ((player == 1 and computer == 2) or (player == 2 and computer == 3) or

(player == 3 and computer == 1)): print("噢耶!!!电脑弱爆了!!!") elif player == computer:print("⼼有灵犀,再来⼀盘!") else:print("不⾏,我要和你决战到天亮!")


5.2随机数的处理 Python 中,要使⽤随机数,⾸先需要导⼊ 随机数 的 模块 —— “⼯具包”

      import random

  导⼊模块后,可以直接在 模块名称 后⾯敲⼀个 . 然后按 Tab 键,会提示该模块中包含的所有函数  random.randint(a, b) ,返回 [a, b] 之间的整数,包含 a b 例如:   
      random.randint(12, 20) # ⽣成的随机数n: 12 <= n <= 20random.randint(20, 20) # 20
      random.randint(20, 10) # 该语句是错误的,下限必须⼩于上限






1 个回复

倒序浏览
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马