Python中的if、else、elif语句用法简明讲解

yipeiwu_com6年前Python基础

下面我们学习if语句,输入下面的代码,确保能够正确运行。

people = 20 
cats = 30 
dogs = 15 
 
 
if people < cats: 
  print "Too many cats! The world is doomed!" 
 
 
if people > cats: 
  print "Not many cats! The world is saved!" 
 
 
if people < dogs: 
  print "The world is drooled on!" 
 
 
if people > dogs: 
  print "The world is dry!" 
 
 
dogs += 5 
 
 
if people >= dogs: 
  print "People are greater than or equal to dogs." 
 
 
if people <= dogs: 
  print "People are less than or equal to dogs." 
 
 
if people == dogs: 
  print "People are dogs." 


运行结果

root@he-desktop:~/mystuff# python ex29.py 
Too many cats! The world is doomed!
The world is dry!
People are greater than or equal to dogs.
People are less than or equal to dogs.
People are dogs.

加分练习
通过上面的练习,我们自己猜测一下if语句的作用,用自己的话回答下面的问题。
1. 你认为if对它下面的代码做了什么?
判断为True就执行它下面的代码,否则不执行。

2. 为什么if下面的代码要缩进4个空格?
为了表示这些代码属于if判断下包括的代码。

3. 如果不缩进会发生什么?
会提示一个缩进错误。

4. 你可以从第27节中拿一些布尔表达式来做if判断吗?

5. 改变people,dogs,cats变量的值,看看会发生什么?

答案:
1. if语句下面的代码是if的一个分支。就像书里的一个章节,你选择了这章就会跳到这里阅读。这个if语句就像是说:“如果布尔判断为True,就执行下面的代码,否则跳过这些代码”。

2. 用冒号结束一个语句就是要告诉python,我要开始一个新的代码段了。缩进4个空格就是说,这些代码是包含在这个代码段中的,和函数的使用一样。

3. 不缩进会报错,python规定冒号后面语句必须有缩进。

4. 可以,而且可以是复杂的语句。

5. 修改变量的值后,判断语句就会相应的变True或者False,然后输出不同的语句。

比较我的答案和你自己的答案,确保你能理解代码块这个概念,因为这个对于下面的练习非常重要。

输入下面的代码,运行它:

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 dicide." 
 
 
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." 


运行结果

root@he-desktop:~/mystuff# python ex30.py 
We should take the cars.
Maybe we could take the buses.
Alright, let's just take the buses.

相关文章

Tensorflow 利用tf.contrib.learn建立输入函数的方法

Tensorflow 利用tf.contrib.learn建立输入函数的方法

在实际的业务中,可能会遇到很大量的特征,这些特征良莠不齐,层次不一,可能有缺失,可能有噪声,可能规模不一致,可能类型不一样,等等问题都需要我们在建模之前,先预处理特征或者叫清洗特征。那么...

对python中数据集划分函数StratifiedShuffleSplit的使用详解

对python中数据集划分函数StratifiedShuffleSplit的使用详解

文章开始先讲下交叉验证,这个概念同样适用于这个划分函数 1.交叉验证(Cross-validation) 交叉验证是指在给定的建模样本中,拿出其中的大部分样本进行模型训练,生成模型,留小...

TensorFlow入门使用 tf.train.Saver()保存模型

关于模型保存的一点心得 saver = tf.train.Saver(max_to_keep=3) 在定义 saver 的时候一般会定义最多保存模型的数量,一般来说,如果模型本身很...

numpy和pandas中数组的合并、拉直和重塑实例

合并 在numpy中合并两个array numpy中可以通过concatenate,参数axis=0表示在垂直方向上合并两个数组,等价于np.vstack;参数axis=1表示在水平方向...

完美解决python中ndarray 默认用科学计数法显示的问题

完美解决python中ndarray 默认用科学计数法显示的问题

机器环境: Python 3.6.4 numpy==1.14.0 pandas==0.22.0 解决方法: np.set_printoptions(suppress=True) 默认情况...