Crossin的编程教室
标题: 【Python 第23课】 if, elif, else [打印本页]
作者: crossin先生 时间: 2014-4-24 18:30
标题: 【Python 第23课】 if, elif, else
今天补充之前讲过的一个语句:if。为什么我跳要着讲,因为我的想法是先讲下最最基本的概念,让你能用起来,之后你熟悉了,再说些细节。
关于if,可以发送数字『7』回顾之前的课程。它除了我们之前讲的用法外,还可以配合elif和else使用,使程序的运行顺序更灵活。
之前说的if,是:“如果”条件满足,就做xxx,否则就不做。
else顾名思义,就是:“否则”就做yyy。
当if后面的条件语句不满足时,与之相对应的else中的代码块将被执行。
if a == 1:
print 'right'
else:
print 'wrong'
elif意为else if,含义就是:“否则如果”条件满足,就做yyy。elif后面需要有一个逻辑判断语句。
当if条件不满足时,再去判断elif的条件,如果满足则执行其中的代码块。
if a == 1:
print 'one'
elif a == 2:
print 'two'
if, elif, else可组成一个整体的条件语句。
if是必须有的;
elif可以没有,也可以有很多个,每个elif条件不满足时会进入下一个elif判断;
else可以没有,如果有的话只能有一个,必须在条件语句的最后。
if a == 1:
print 'one'
elif a == 2:
print 'two'
elif a == 3:
print 'three'
else:
print 'too many'
我们昨天刚改写的小游戏中的函数isEqual,用了三个条件判断,我们可以再改写成一个包含if...elif...else的结构:
def isEqual(num1, num2):
if num1<num2:
print 'too small'
return False;
elif num1>num2:
print 'too big'
return False;
else:
print 'bingo'
return True
作者: s201073009 时间: 2015-1-26 08:14
请问bingo = False 什么作用?
作者: s201073009 时间: 2015-1-26 08:16
最后的程序没看懂……bingo = False 之后怎么运行的呢?
作者: crossin先生 时间: 2015-1-26 13:24
s201073009 发表于 2015-1-26 08:16
最后的程序没看懂……bingo = False 之后怎么运行的呢?
哪里的代码?
while那一课里,bingo = False只是给bingo一个初始条件,让whie可以执行
作者: mengnanlong 时间: 2016-1-19 15:29
crossin老师,我用python3.5版本的做那道最大值的题,我按照你的输入进去,结果输出的时候出错了,我分别输入的:
121.121.12
3
输出的:
3
您知道是为什么吗?
-
question.png
(24.76 KB, 下载次数: 743)
作者: mengnanlong 时间: 2016-1-19 16:06
crossin老师,关于比大小那道题,用python3.5版本的,我想浮点数和整数相比较,然后输出的时候,既可以输出浮点数或者整数,这个要怎么实现啊?
作者: crossin先生 时间: 2016-1-19 20:59
mengnanlong 发表于 2016-1-19 16:06
crossin老师,关于比大小那道题,用python3.5版本的,我想浮点数和整数相比较,然后输出的时候,既可以输出 ...
python3的input相当于2的raw_input,得到的是一个字符串。
如果要取值,需要再转一下:
a=eval(input())
作者: mengnanlong 时间: 2016-1-20 18:17
crossin先生 发表于 2016-1-19 20:59
python3的input相当于2的raw_input,得到的是一个字符串。
如果要取值,需要再转一下:
a=eval(input()) ...
十分感谢,crossin老师~~老师,我想以3为基础学习,有没有什么推荐的课本?还是你觉得初学者从2学比较好?因为现在找到的大部分教材都是2的
作者: crossin先生 时间: 2016-1-21 11:16
mengnanlong 发表于 2016-1-20 18:17
十分感谢,crossin老师~~老师,我想以3为基础学习,有没有什么推荐的课本?还是你觉得初学者从2学比较好 ...
我建议是2,很多教材是2,很多库也还停留在对2的支持上。而且2学好了,转3也不是难事。
【Python 第63课】python 2到3的新手坑
可以先看下这课
作者: brahmagupta 时间: 2017-2-24 12:14
crossin老师,python里有 类似switch这种条件语句么?
作者: crossin先生 时间: 2017-2-24 16:50
brahmagupta 发表于 2017-2-24 12:14
crossin老师,python里有 类似switch这种条件语句么?
没有
要用 if elif 来实现
作者: brahmagupta 时间: 2017-2-24 18:57
crossin先生 发表于 2017-2-24 16:50
没有
要用 if elif 来实现
那格式上和可读性上是一大挑战啊,如果判断条件多的话。
作者: crossin先生 时间: 2017-2-25 22:10
brahmagupta 发表于 2017-2-24 18:57
那格式上和可读性上是一大挑战啊,如果判断条件多的话。
是,就是一串
if
elif
elif
...
但本质上来说,和switch是一样的
欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) |
Powered by Discuz! X2.5 |