python中的elif语句怎么运行_Python 基础起步 (九) 条件语句 if elif else 其实很简单...

大家好,在我们上一篇复习了dict的基础和实用技巧后,今天我们来看一下Python里的逻辑关系,所谓逻辑关系无非就是如果...就...否则...之类的,不是非常复杂,我的意思是复杂的地方不用目前了解,因为已经超出了小白的水准,哈哈,闲话少说,让我们一起来看看吧~

什么是if

Python里面用if-else的形式

if : #如果满足什么条件

#就执行什么步骤

注意有两点:

if 后面的判断结果就是True和False两种类型,如果True,将执行statement的步骤1

statement那里一定有缩进,写在if条件里面

让我们拿实际的情况看看具体是什么意思:

x = 0

y = 5

if x < y: # True

print('yes')

if y < x: # False

print('yes')

if x: # Falsy

print('yes')

if y: # Truthy

print('yes')

if x or y: # Truthy

print('yes')

if x and y: # Falsy

print('yes')

if 'aul' in 'grault': # Truthy

print('yes')

if 'quux' in ['foo', 'bar', 'baz']: # Falsy

print('yes')

我给大家解释一个可能产生的疑问,就是如下这个条件式:

if x: # Falsy

print('yes')

这里为什么是错误的呢,因为很简单,在Python里默认1就是True,0就是False,这里x的值正好是0,和ython默认的规定的一样,所以这个判断也是错的,大家明白了吧~

满足if条件后有多个statements执行

用大白话讲就是说如果满足了if的条件,那么你有很多事情想依次执行,而且在做完这些事情后完成了条件,开始下一项任务,那么这种情况下调用形式如下图:

if :

...

bf9522b1eb168ab096d16f3bcbdde568.png

感觉还是图片比较容易理解哈哈~ 让我们来看一个真实的例子:

if 'foo' in ['bar', 'baz', 'qux']:

print('Expression was true')

print('Executing statement in suite')

print('...')

print('Done.')

print('After conditional')

这段代码完美的展示了图片中讲解的内容,大家可以猜猜结果,这段代码执行后会输出什么。

现在公布答案:

After conditional

简单说一下,很简单,我们想要看看'foo' 这个字符串是否在数组['bar', 'baz', 'qux']里面,如果在,一次执行底下的缩进的4个print方法,如果不在,跳出if,继续该干什么干什么,所以显然易见'foo'不在数组里,因此直接执行最后的print('After conditional')

多个if在一起

大家看一下下面的代码,如果你预想的输出结果和实际的一样,那恭喜你已经彻底明白if是什么东西了

# Does line execute? Yes No

# --- --

if 'foo' in ['foo', 'bar', 'baz']: # x

print('Outer condition is true') # x

if 10 > 20: # x

print('Inner condition 1') # x

print('Between inner conditions') # x

if 10 < 20: # x

print('Inner condition 2') # x

print('End of outer condition') # x

print('After outer condition') # x

输出结果为:

Outer condition is true

Between inner conditions

Inner condition 2

End of outer condition

After outer condition

if else

在Python中使用if else 的表达模板如下:

if :

else:

大家想必很容易看懂,现在举个栗子:

x = 20

if x < 50:

print('(first suite)')

print('x is small')

else:

print('(second suite)')

print('x is large')

输出结果为:

(first suite)

x is small

很容易理解了,如果满足if条件如何,else否则怎么怎么样

if,elif ,else

让我们来看最后一种情况,也很好弄懂,elif的意思就是else if 的缩写而已,表达模式如下:

if :

elif :

elif :

...

else:

看一个具体实例:

name = 'Joe'

if name == 'Fred':

print('Hello Fred')

elif name == 'Xander':

print('Hello Xander')

elif name == 'Joe':

print('Hello Joe')

elif name == 'Arnold':

print('Hello Arnold')

else:

print("I don't know who you are!")

输出结果为:

Hello Joe

总而言之就是如果不满足第一个if条件,接着看是否满足第二个if条件,然后是第三个...

if 写在一行里

Python有一个好处就是它非常懒,很多东西它会自己想办法减少代码量,所以就出现了以下这种写法:

if :

if : ; ; ...;

分别看两个例子,第一个简单一些的:

if 'f' in 'foo': print('1'); print('2'); print('3')

Out:1

2

3

稍微复杂一些的:

x = 2

if x == 1: print('foo'); print('bar'); print('baz')

elif x == 2: print('qux'); print('quux')

else: print('corge'); print('grault')

Out: qux

quux

总结

基本的条件语句常见的就这几种

个人建议不要写一行,还是拆成多行写,这样思路清晰

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值