免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
Python-if語(yǔ)句

條件語(yǔ)句


1)      if 語(yǔ)句


例子:


# 執(zhí)行if語(yǔ)句內(nèi)的程序


a = input("a:")


b = input("b:")


if(a > b):


print a, " > ", b


Note:如果是在pydeveclipse下,運(yùn)行然后輸入數(shù)字,打個(gè)回車(chē)就會(huì)出現(xiàn)“SyntaxErrorunexpected EOF while parsing”,所以只能用raw_input來(lái)代替。原因是回車(chē),編譯器都多讀一個(gè)/r,一般按回車(chē)后,shells 會(huì)輸入“/n”,但因?yàn)?/span>Eclipse控制臺(tái)輸入的是“/r/n”,python就不能很好的識(shí)別,可以說(shuō)這是Python的一個(gè)bug。


 


# 跳過(guò)if語(yǔ)句


a = input("a:")


b = input("b:")


if(a > b):


    print a, " > ", b


print a, " < ", b


 


# if else語(yǔ)句


a = input("a:")


b = input("b:")


if(a > b):


    print a, " > ", b


else:


print a, " < ", b


Noteinput()he raw_input. Raw_input( )捕獲用戶的原始輸入,raw_input()函數(shù)的聲明如下所示:


Raw_input([prompt])->string,參數(shù)prompt是控制臺(tái)輸出的提示文字,提示用戶輸入。返回值為字符串。如果輸入的是數(shù)字,返回的還是字符串。


Input( )支持用戶輸入數(shù)字或表達(dá)式,不支持輸入字符串。Input( )函數(shù)的聲明如下所示:


Input([prompt])->value。


2)      if…elif…else語(yǔ)句


例子:


# if elif else語(yǔ)句


score = raw_input("score:")


score=int(score)


if(score >= 90) and (score <= 100):


    print "A"


elif(score >= 80) and (score < 90):


    print "B"


elif(score >= 60) and (score < 80):


    print "C"


else:


    print "D"


3)      if語(yǔ)句的嵌套


編寫(xiě)條件語(yǔ)句時(shí),應(yīng)該盡量避免使用嵌套語(yǔ)句。嵌套語(yǔ)句不便于閱讀,而且可能會(huì)忽略一些可能性。


例子:


x = -1


y = 99


if(x >= 0):


    if(x > 0):          #嵌套的if語(yǔ)句


        y = 1


    else:


        y = 0


else:


    y = -1


print "y =", y


輸出為y=-1


4)      實(shí)現(xiàn)switch語(yǔ)句的功能


Python并沒(méi)有提供switch語(yǔ)句,Python可以通過(guò)字典實(shí)現(xiàn)switch語(yǔ)句的功能。


實(shí)現(xiàn)方法分兩步。首先,定義一個(gè)字典。字典是由鍵值對(duì)組成的集合。其次,調(diào)用字典的get()獲取相應(yīng)的表達(dá)式。


例子:


from __future__ import division


x = 1


y = 2


operator = "/"


result = {


    "+" : x + y,


    "-" : x - y,


    "*" : x * y,


    "/" : x / y


}


print result.get(operator)          


輸出為0.5


另一種使用switch分支語(yǔ)句的方案是創(chuàng)建一個(gè)switch類(lèi),處理程序的流程。


a)         創(chuàng)建一個(gè)switch類(lèi),該類(lèi)繼承自Python的祖先類(lèi)object。調(diào)用構(gòu)造函數(shù)init( )初始化需要匹配的字符串,并需要定義兩個(gè)成員變量valuefall。Value用于存放需要匹配的字符串,fall用于記錄是否匹配成功,初始值為false,標(biāo)識(shí)匹配不成功。如果匹配成功,程序往后執(zhí)行。


b)        定義一個(gè)match( )方法,該方法用于用于匹配case子句。這里需要考慮三種情況:首先是匹配成功的情況,其次是匹配失敗的默認(rèn)case子句,最后是case子句中沒(méi)有使用break中斷的情況。


c)         重寫(xiě)__iter__( )方法,定義該方法后才能使switch類(lèi)用于循環(huán)語(yǔ)句中。__iter__( )調(diào)用match( )方法進(jìn)行匹配。通過(guò)yield保留字,使函數(shù)可以在循環(huán)中迭代。此外,調(diào)用StopIteration異常中斷循環(huán)。


d)        編寫(xiě)調(diào)用代碼,在for…in…循環(huán)中使用switch類(lèi)。


例子:


#!/usr/bin/python


# -*- coding: UTF-8 -*-


 


class switch(object):


    def __init__(self, value):      # 初始化需要匹配的值value


        self.value = value


        self.fall = False           # 如果匹配到的case語(yǔ)句中沒(méi)有break,則falltrue。


 


    def __iter__(self):


        yield self.match            # 調(diào)用match方法 返回一個(gè)生成器


        raise StopIteration         # StopIteration 異常來(lái)判斷for循環(huán)是否結(jié)束


 


    def match(self, *args):         # 模擬case子句的方法


        if self.fall or not args:   # 如果falltrue,則繼續(xù)執(zhí)行下面的case子句


                                    # case子句沒(méi)有匹配項(xiàng),則流轉(zhuǎn)到默認(rèn)分支。


            return True


        elif self.value in args:    # 匹配成功


            self.fall = True


            return True


        else:                       # 匹配失敗


            return False


 


operator = "+"


x = 1


y = 2


for case in switch(operator):        # switch只能用于for in循環(huán)中


    if case('+'):


        print x + y


        break


    if case('-'):


        print x - y


        break


    if case('*'):


        print x * y


        break


    if case('/'):


        print x / y


        break


    if case():                      # 默認(rèn)分支


        print ""


輸出為3

條件語(yǔ)句


1)      if 語(yǔ)句


例子:


# 執(zhí)行if語(yǔ)句內(nèi)的程序


a = input("a:")


b = input("b:")


if(a > b):


print a, " > ", b


Note:如果是在pydeveclipse下,運(yùn)行然后輸入數(shù)字,打個(gè)回車(chē)就會(huì)出現(xiàn)“SyntaxErrorunexpected EOF while parsing”,所以只能用raw_input來(lái)代替。原因是回車(chē),編譯器都多讀一個(gè)/r,一般按回車(chē)后,shells 會(huì)輸入“/n”,但因?yàn)?/span>Eclipse控制臺(tái)輸入的是“/r/n”,python就不能很好的識(shí)別,可以說(shuō)這是Python的一個(gè)bug。


 


# 跳過(guò)if語(yǔ)句


a = input("a:")


b = input("b:")


if(a > b):


    print a, " > ", b


print a, " < ", b


 


# if else語(yǔ)句


a = input("a:")


b = input("b:")


if(a > b):


    print a, " > ", b


else:


print a, " < ", b


Noteinput()he raw_input. Raw_input( )捕獲用戶的原始輸入,raw_input()函數(shù)的聲明如下所示:


Raw_input([prompt])->string,參數(shù)prompt是控制臺(tái)輸出的提示文字,提示用戶輸入。返回值為字符串。如果輸入的是數(shù)字,返回的還是字符串。


Input( )支持用戶輸入數(shù)字或表達(dá)式,不支持輸入字符串。Input( )函數(shù)的聲明如下所示:


Input([prompt])->value


2)      if…elif…else語(yǔ)句


例子:


# if elif else語(yǔ)句


score = raw_input("score:")


score=int(score)


if(score >= 90) and (score <= 100):


    print "A"


elif(score >= 80) and (score < 90):


    print "B"


elif(score >= 60) and (score < 80):


    print "C"


else:


    print "D"


3)      if語(yǔ)句的嵌套


編寫(xiě)條件語(yǔ)句時(shí),應(yīng)該盡量避免使用嵌套語(yǔ)句。嵌套語(yǔ)句不便于閱讀,而且可能會(huì)忽略一些可能性。


例子:


x = -1


y = 99


if(x >= 0):


    if(x > 0):          #嵌套的if語(yǔ)句


        y = 1


    else:


        y = 0


else:


    y = -1


print "y =", y


輸出為y=-1


4)      實(shí)現(xiàn)switch語(yǔ)句的功能


Python并沒(méi)有提供switch語(yǔ)句,Python可以通過(guò)字典實(shí)現(xiàn)switch語(yǔ)句的功能。


實(shí)現(xiàn)方法分兩步。首先,定義一個(gè)字典。字典是由鍵值對(duì)組成的集合。其次,調(diào)用字典的get()獲取相應(yīng)的表達(dá)式。


例子:


from __future__ import division


x = 1


y = 2


operator = "/"


result = {


    "+" : x + y,


    "-" : x - y,


    "*" : x * y,


    "/" : x / y


}


print result.get(operator)          


輸出為0.5


另一種使用switch分支語(yǔ)句的方案是創(chuàng)建一個(gè)switch類(lèi),處理程序的流程。


a)         創(chuàng)建一個(gè)switch類(lèi),該類(lèi)繼承自Python的祖先類(lèi)object。調(diào)用構(gòu)造函數(shù)init( )初始化需要匹配的字符串,并需要定義兩個(gè)成員變量valuefallValue用于存放需要匹配的字符串,fall用于記錄是否匹配成功,初始值為false,標(biāo)識(shí)匹配不成功。如果匹配成功,程序往后執(zhí)行。


b)        定義一個(gè)match( )方法,該方法用于用于匹配case子句。這里需要考慮三種情況:首先是匹配成功的情況,其次是匹配失敗的默認(rèn)case子句,最后是case子句中沒(méi)有使用break中斷的情況。


c)         重寫(xiě)__iter__( )方法,定義該方法后才能使switch類(lèi)用于循環(huán)語(yǔ)句中。__iter__( )調(diào)用match( )方法進(jìn)行匹配。通過(guò)yield保留字,使函數(shù)可以在循環(huán)中迭代。此外,調(diào)用StopIteration異常中斷循環(huán)。


d)        編寫(xiě)調(diào)用代碼,在for…in…循環(huán)中使用switch類(lèi)。


例子:


#!/usr/bin/python


# -*- coding: UTF-8 -*-


 


class switch(object):


    def __init__(self, value):      # 初始化需要匹配的值value


        self.value = value


        self.fall = False           # 如果匹配到的case語(yǔ)句中沒(méi)有break,則falltrue。


 


    def __iter__(self):


        yield self.match            # 調(diào)用match方法 返回一個(gè)生成器


        raise StopIteration         # StopIteration 異常來(lái)判斷for循環(huán)是否結(jié)束


 


    def match(self, *args):         # 模擬case子句的方法


        if self.fall or not args:   # 如果falltrue,則繼續(xù)執(zhí)行下面的case子句


                                    # case子句沒(méi)有匹配項(xiàng),則流轉(zhuǎn)到默認(rèn)分支。


            return True


        elif self.value in args:    # 匹配成功


            self.fall = True


            return True


        else:                       # 匹配失敗


            return False


 


operator = "+"


x = 1


y = 2


for case in switch(operator):        # switch只能用于for in循環(huán)中


    if case('+'):


        print x + y


        break


    if case('-'):


        print x - y


        break


    if case('*'):


        print x * y


        break


    if case('/'):


        print x / y


        break


    if case():                      # 默認(rèn)分支


        print ""


輸出為3

條件語(yǔ)句


1)      if 語(yǔ)句


例子:


# 執(zhí)行if語(yǔ)句內(nèi)的程序


a = input("a:")


b = input("b:")


if(a > b):


print a, " > ", b


Note:如果是在pydeveclipse下,運(yùn)行然后輸入數(shù)字,打個(gè)回車(chē)就會(huì)出現(xiàn)“SyntaxErrorunexpected EOF while parsing”,所以只能用raw_input來(lái)代替。原因是回車(chē),編譯器都多讀一個(gè)/r,一般按回車(chē)后,shells 會(huì)輸入“/n”,但因?yàn)?/span>Eclipse控制臺(tái)輸入的是“/r/n”,python就不能很好的識(shí)別,可以說(shuō)這是Python的一個(gè)bug。


 


# 跳過(guò)if語(yǔ)句


a = input("a:")


b = input("b:")


if(a > b):


    print a, " > ", b


print a, " < ", b


 


# if else語(yǔ)句


a = input("a:")


b = input("b:")


if(a > b):


    print a, " > ", b


else:


print a, " < ", b


Noteinput()he raw_input. Raw_input( )捕獲用戶的原始輸入,raw_input()函數(shù)的聲明如下所示:


Raw_input([prompt])->string,參數(shù)prompt是控制臺(tái)輸出的提示文字,提示用戶輸入。返回值為字符串。如果輸入的是數(shù)字,返回的還是字符串。


Input( )支持用戶輸入數(shù)字或表達(dá)式,不支持輸入字符串。Input( )函數(shù)的聲明如下所示:


Input([prompt])->value。


2)      if…elif…else語(yǔ)句


例子:


# if elif else語(yǔ)句


score = raw_input("score:")


score=int(score)


if(score >= 90) and (score <= 100):


    print "A"


elif(score >= 80) and (score < 90):


    print "B"


elif(score >= 60) and (score < 80):


    print "C"


else:


    print "D"


3)      if語(yǔ)句的嵌套


編寫(xiě)條件語(yǔ)句時(shí),應(yīng)該盡量避免使用嵌套語(yǔ)句。嵌套語(yǔ)句不便于閱讀,而且可能會(huì)忽略一些可能性。


例子:


x = -1


y = 99


if(x >= 0):


    if(x > 0):          #嵌套的if語(yǔ)句


        y = 1


    else:


        y = 0


else:


    y = -1


print "y =", y


輸出為y=-1


4)      實(shí)現(xiàn)switch語(yǔ)句的功能


Python并沒(méi)有提供switch語(yǔ)句,Python可以通過(guò)字典實(shí)現(xiàn)switch語(yǔ)句的功能。


實(shí)現(xiàn)方法分兩步。首先,定義一個(gè)字典。字典是由鍵值對(duì)組成的集合。其次,調(diào)用字典的get()獲取相應(yīng)的表達(dá)式。


例子:


from __future__ import division


x = 1


y = 2


operator = "/"


result = {


    "+" : x + y,


    "-" : x - y,


    "*" : x * y,


    "/" : x / y


}


print result.get(operator)          


輸出為0.5


另一種使用switch分支語(yǔ)句的方案是創(chuàng)建一個(gè)switch類(lèi),處理程序的流程。


a)         創(chuàng)建一個(gè)switch類(lèi),該類(lèi)繼承自Python的祖先類(lèi)object。調(diào)用構(gòu)造函數(shù)init( )初始化需要匹配的字符串,并需要定義兩個(gè)成員變量valuefall。Value用于存放需要匹配的字符串,fall用于記錄是否匹配成功,初始值為false,標(biāo)識(shí)匹配不成功。如果匹配成功,程序往后執(zhí)行。


b)        定義一個(gè)match( )方法,該方法用于用于匹配case子句。這里需要考慮三種情況:首先是匹配成功的情況,其次是匹配失敗的默認(rèn)case子句,最后是case子句中沒(méi)有使用break中斷的情況。


c)         重寫(xiě)__iter__( )方法,定義該方法后才能使switch類(lèi)用于循環(huán)語(yǔ)句中。__iter__( )調(diào)用match( )方法進(jìn)行匹配。通過(guò)yield保留字,使函數(shù)可以在循環(huán)中迭代。此外,調(diào)用StopIteration異常中斷循環(huán)。


d)        編寫(xiě)調(diào)用代碼,在for…in…循環(huán)中使用switch類(lèi)。


例子:


#!/usr/bin/python


# -*- coding: UTF-8 -*-


 


class switch(object):


    def __init__(self, value):      # 初始化需要匹配的值value


        self.value = value


        self.fall = False           # 如果匹配到的case語(yǔ)句中沒(méi)有break,則falltrue。


 


    def __iter__(self):


        yield self.match            # 調(diào)用match方法 返回一個(gè)生成器


        raise StopIteration         # StopIteration 異常來(lái)判斷for循環(huán)是否結(jié)束


 


    def match(self, *args):         # 模擬case子句的方法


        if self.fall or not args:   # 如果falltrue,則繼續(xù)執(zhí)行下面的case子句


                                    # case子句沒(méi)有匹配項(xiàng),則流轉(zhuǎn)到默認(rèn)分支。


            return True


        elif self.value in args:    # 匹配成功


            self.fall = True


            return True


        else:                       # 匹配失敗


            return False


 


operator = "+"


x = 1


y = 2


for case in switch(operator):        # switch只能用于for in循環(huán)中


    if case('+'):


        print x + y


        break


    if case('-'):


        print x - y


        break


    if case('*'):


        print x * y


        break


    if case('/'):


        print x / y


        break


    if case():                      # 默認(rèn)分支


        print ""


輸出為3

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
python最全的題目及答案7
統(tǒng)計(jì)字符串中不同字符個(gè)數(shù)問(wèn)題
初中生Python程序設(shè)計(jì)百問(wèn)百答
Python 3 入門(mén),看這篇就夠了!數(shù)萬(wàn)字長(zhǎng)文!保證你肯定能學(xué)會(huì)!
編寫(xiě)高質(zhì)量代碼改善Python程序的很多建議
計(jì)算機(jī)相關(guān)專(zhuān)業(yè)“Python程序設(shè)計(jì)”教學(xué)大綱(參考)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服