习题 30: Else 和 If?

前一习题中你写了一些 “if 语句(if-statements)”,并且试图猜出它们是什么,以及实现的是什么功能。在你继续学习之前,我给你解释一下上一节的加分习题的答案。上一节的加分习题你做过了吧,有没有?

  1. 你认为 if 对于它下一行的代码做了什么? If 语句为代码创建了一个所谓的“分支”,就跟 RPG 游戏中的情节分支一样。if 语句告诉你的脚本:“如果这个布尔表达式为真,就运行接下来的代码,否则就跳过这一段。”
  2. 为什么 if 语句的下一行需要 4 个空格的缩进? 行尾的冒号的作用是告诉 Python 接下来你要创建一个新的代码区段。这根你创建函数时的冒号是一个道理。
  3. 如果不缩进, 会发生什么事情? 如果你没有缩进,时时彩计划软件公式:你应该会看到 Python 报错。Python 的规则里,只要一行以“冒号(colon)” : 结尾,它接下来的内容就应该有缩进。
  4. 把习题 27 中的其它布尔表达式放到 if语句 中会不会也可以运行呢?试一下。 可以。而且不管多复杂都可以,虽然写复杂的东西通常是一种不好的编程风格。
  5. 如果把变量 people, cats, 和 dogs 的初始值改掉, 会发生什么事情? 因为你比较的对象是数字,如果你把这些数字改掉的话,某些位置的 if 语句会被演绎为 True,而它下面的代码区段将被运行。你可以试着修改这些数字,然后在头脑里假想一下那一段代码会被运行。

把我的答案和你的答案比较一下,确认自己真正懂得代码“区段”的含义。这点对于你下一节的练习很重要,因为你将会写很多的 if 语句。

把这一段写下来,并让它运行起来:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
people = 30
cars = 40
buses = 15


if cars > people:
    print "We should take the cars."
elif cars < people:
    print "We should not take the cars."
else:
    print "We can't decide."

if buses > cars:
    print "That's too many buses."
elif buses < cars:
    print "Maybe we could take the buses."
else:
    print "We still can't decide."

if people > buses:
    print "Alright, let's just take the buses."
else:
    print "Fine, let's stay home then."

你应该看到的结果?

$ python ex30.py
We should take the cars.
Maybe we could take the buses.
Alright, let's just take the buses.
$

加分习题?

  1. 猜想一下 elifelse 的功能。
  2. cars, people, 和 buses 的数量改掉,然后追溯每一个 if 语句。看看最后会打印出什么来。
  3. 试着写一些复杂的布尔表达式,例如 cars > people and buses < cars
  4. 在每一行的上面写注解,说明这一行的功用。

Project Versions

Table Of Contents

Previous topic

习题 29: 如果(if)

Next topic

习题 31: 作出决定

This Page

时时彩代理上鼎狐网 优博2娱乐平台官网 江西时时彩怎样预测 注册重庆时时彩平台 宝宝计划软件手机版
时时彩后三做号软件手机版本 11选5时时彩玩法 时时彩软件下载crsky 广东11选5遗漏数据 时时彩注册送钱lm0
重庆时时彩大漏洞 时时彩胆码讲解 时时彩平台代理 注册送体验金68 网上代理时时彩合法吗
pk10拼接软件 福利彩票开奖视频 重庆时时彩工具 k线走势图分析方法 重庆时时彩开奖视频
北京pk拾走势图怎么看 江西时时彩怎么不开奖 11选5中奖助手 青海快三遗漏号 江苏十一选五开奖走势
英雄杀打梭哈 好运来娱乐城 甘肃快三开奖结果 陕西快乐10分钟技巧 环岛赛海南体彩网
全天秒速赛车计划 河北快3直播 吉林快3开奖号码 时时彩平台怎么开 四川麻将下载
吉林十一选五开奖结果 江苏快3走势图表 多乐彩11选五开奖结果 重庆三分彩官方下载 老时时彩计划软件