溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

python return邏輯判斷表達(dá)式(21)

發(fā)布時(shí)間:2020-05-27 14:19:35 來(lái)源:網(wǎng)絡(luò) 閱讀:329 作者:qq5d6f345f0205e 欄目:編程語(yǔ)言

python return邏輯判斷表達(dá)式(21)

一.return邏輯判斷表達(dá)式 and

and:遇假則假,所以前面為假就不執(zhí)行和判斷后面直接返回假;前面為真則繼續(xù)判斷執(zhí)行后面直到表達(dá)式結(jié)束或者出現(xiàn)假為止;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂(yōu)

@Blog(個(gè)人博客地址): shuopython.com

@WeChat Official Account(微信公眾號(hào)):猿說(shuō)python

@Github:www.github.com

@File:python_return.py

@Time:2019/10/6 19:48

?

@Motto:不積跬步無(wú)以至千里,不積小流無(wú)以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!

"""

?

def fun1():

????# 所有條件都為真,返回最后一個(gè)值

????return "21" and True

?

def fun2():

????# 檢測(cè)所有表達(dá)式,直到遇到假為止,并返回假

????return 54 and 1 and True and 0

?

def fun3():

????# 遇到真,繼續(xù)后面的判斷,直到遇到假為止,如果遇見(jiàn)假直接返回,不再繼續(xù)判斷

????return 1 and True and False and 54 and 0

?

print(fun1())

print(fun2())

print(fun3())

輸出結(jié)果:

1

2

3

True

0

False


小敲門(mén):

1.如果有假的表達(dá)式:返回值為第一個(gè)假表達(dá)式的結(jié)果;

2.如果沒(méi)有假的表達(dá)式:返回值為最后一個(gè)真表達(dá)式的結(jié)果;

?

二.return邏輯判斷表達(dá)式 or

or:遇真則真,所以前面為真就不執(zhí)行和判斷后面;前面為假則繼續(xù)判斷執(zhí)行后面直到表達(dá)式結(jié)束或者出現(xiàn)真為止;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

def fun1():

????# 所有條件都為真,返回第一個(gè)真的表達(dá)式

????return "21" or True

?

def fun2():

????# 所有條件都為假,直到遇到真為止,并返回真,沒(méi)有真則返回最后一個(gè)假

????return "" or False or 0

?

def fun3():

????# 直到遇到真為止,并返回真,不在繼續(xù)后面的判斷

????return 0 or True or False or 54 or 0

?

print(fun1())

print(fun2())

print(fun3())

輸出結(jié)果:

1

2

3

21

0

True

小敲門(mén):

1.如果有真的表達(dá)式:返回值為第一個(gè)真表達(dá)式的結(jié)果;

2.如果沒(méi)有真的表達(dá)式:返回值為最后一個(gè)假表達(dá)式的結(jié)果;

?

三.return邏輯判斷表達(dá)式 and和or配合使用

and和or配合使用:其實(shí)并沒(méi)有先后順序,表達(dá)式重前往后依次執(zhí)行,上一個(gè)表達(dá)式的結(jié)果作為下一個(gè)表達(dá)式的開(kāi)始;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

def fun1():

????'''

????動(dòng)作分解:

?

????第一步:"21" and True??返回結(jié)果 True

????第二步:True or 1??返回結(jié)果 True

????注意第二步 True or 1 中的 True 是第一步返回的結(jié)果并不是表達(dá)式中的True

????'''

????return "21" and True or 1??#等價(jià):return (("21" and True) or 1)

?

def fun2():

????'''

????動(dòng)作分解:

?

????第一步:"" or False??返回結(jié)果 False

????第二步:False and 0??返回結(jié)果 False

????注意第二步 False and 0 中的 False 是第一步返回的結(jié)果并不是表達(dá)式中的 False

????'''

????return "" or False and 0 #等價(jià):return (("" or False) and 0)

?

def fun3():

????'''

????動(dòng)作分解:

?

????第一步:0 or True??返回結(jié)果 True

????第二步:True and False??返回結(jié)果 False

????第三步:False or 54??返回結(jié)果 54

????第四步:54 and 0??返回結(jié)果 0

????注意:上一步的結(jié)果作為下一步的開(kāi)始

????'''

????return 0 or True and False or 54 and 0 #等價(jià):return ((((0 or True) and False) or 54) and 0)

?

def fun4():

????'''

????動(dòng)作分解:

?

????第一步:0 and True and False??返回結(jié)果 0

????第二步:0 or 54??返回結(jié)果 54

????第三步:54 and 0??返回結(jié)果 0

????注意:上一步的結(jié)果作為下一步的開(kāi)始

????'''

????return 0 and True and False or 54 and 0 #等價(jià):return (((0 and True and False) or 54) and 0)

?

print(fun1())

print(fun2())

print(fun3())

print(fun4())

輸出結(jié)果:

1

2

3

4

True

False

0

0

?

四.重點(diǎn)總結(jié)

其實(shí)作為一個(gè)普通函數(shù)直接返回字符串或者其他數(shù)據(jù)類(lèi)型就完了,為何非要這樣費(fèi)力不討好?學(xué)習(xí)學(xué)習(xí),學(xué)習(xí)是一個(gè)過(guò)程,我想我們應(yīng)該過(guò)程中成長(zhǎng),不然即使寫(xiě)了一萬(wàn)次hello world又有何用?return邏輯判斷表達(dá)式?/?字典推導(dǎo)式?/?列表推導(dǎo)式?都是在各種開(kāi)源項(xiàng)目中頻繁使用得寫(xiě)法,這往往也是編程水平的一種提現(xiàn)。

python return邏輯判斷表達(dá)式(21)

猜你喜歡:

1.python函數(shù)

2.python匿名函數(shù)

3.python函數(shù)不定長(zhǎng)參數(shù)*argc,**kargcs

?

轉(zhuǎn)載請(qǐng)注明:猿說(shuō)Python???python return邏輯判斷表達(dá)式


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI