欧美麻豆久久久久久中文_成年免费观看_男人天堂亚洲成人_中国一级片_动漫黄网站免费永久在线观看_国产精品自产av一区二区三区

中培偉業IT資訊頻道
您現在的位置:首頁 > IT資訊 > 軟件研發 > 如何在Python中正確使用SwitchCase語句

如何在Python中正確使用SwitchCase語句

2020-08-17 16:05:14 | 來源:中培企業IT培訓網

編程語言是一種功能強大的工具,它使程序員可以根據表達式或變量的結果完全控制程序的流程。開關條件特別用于在程序運行期間執行與表達式結果有關的不同代碼塊。那么如何在Python中正確使用SwitchCase語句?如果結果是某個值,則程序將執行特定的過程;如果結果是另一個值,則程序將執行另一條過程,依此類推。

首先向您展示switchcase語句如何在Java中起作用,以便您了解在Java中期望得到什么。Pythonswitchcase語句,盡管實現方式可能有所不同,但概念仍然相同。繼續學習本教程您可以使用任何喜歡的PythonIDE或代碼編輯器。

Java切換案例演示如何在一年中的月份之間進行切換,以及在switch語句中找不到匹配項時提供默認結果。

publicstaticvoidswitch_demo(String[]args){

intmonth=7;

StringmonthString;

switch(month){

case1:monthString="January";

break;

case2:monthString="February";

break;

case3:monthString="March";

break;

case4:monthString="April";

break;

case5:monthString="May";

break;

case6:monthString="June";

break;

case7:monthString="July";

break;

case8:monthString="August";

break;

case9:monthString="September";

break;

case10:monthString="October";

break;

case11:monthString="November";

break;

case12:monthString="December";

break;

default:monthString="Invalidmonth";

break;

}

System.out.println(monthString);

}

  讓我們分解上面的switchcase語句:

步驟1:編譯器首先為switch語句生成一個跳轉表

步驟2:switch語句僅對變量或表達式求值一次。

步驟3:switch語句查看評估結果,并根據結果決定執行哪個代碼塊。

ython開發人員GuidoVanRossum相信一種簡單的編程語言可以繞開其他編程語言中發現的系統漏洞和障礙,因此他想創建一種具有更復雜的語法短語的簡單語法。

他從未想象過,如今,Python編程語言可以成為設計科學機器學習應用程序的標準語言時需要使用的編程語言。

  在Python中切換案例

Python沒有內置的switch語句,就像您可以找到的編程語言一樣取而代之的是,PHP和Java確實像Python程序員一樣會使用if-else-if塊,但是由于跳轉表比if-else-if階梯更有效,因此使用切換用例是有效的。

這樣做的原因是,它不是按順序方式評估每個條件,而是查看評估的表達式或變量,然后直接跳轉到要執行的代碼的相關分支。

使用if-else-if梯子進行切換,以查找圓柱體的表面積,文字區域和體積。

defswitch():

r=int(input("EnterRadius:"))

h=int(input("EnterHeight:"))

print("Press1forSurfaceArea press2forLiteralArea press3forVolume ")

option=int(input("youroption:"))ifoption==1:

result=2*3.17*r*(r+h)

print(" SurfaceAreaOfCylinder=",result)elifoption==2:

result=2*3.17*r*h

print("LiteralAreaOfCylinder=",result)elifoption==3:

result=3.17*r*r*h

print("VolumeOfCylinder=",result)else:

print("Incorrectoption")

switch()

說明:在以上示例中,如果選項為1,則計算圓柱體的表面積;如果選項為2,則計算圓柱體表面積,最后選擇選項3,計算圓柱體的體積。

  使用類切換案例語句以將文字轉換為字符串“month”

classPythonSwitchStatement:

defswitch(self,month):

default="Invalidmonth"

returngetattr(self,'case_'+str(month),lambda:default)()

defcase_1(self):

return"January"

defcase_2(self):

return"February"

defcase_3(self):

return"March"

defcase_4(self):

return"April"

defcase_5(self):

return"May"

defcase_6(self):

return"June"

defcase_7(self):

return"July"

defcase_8(self):

return"August"

defcase_9(self):

return"September"

defcase_10(self):

return"October"

defcase_11(self):

return"November"

defcase_12(self):

return"December"

s=PythonSwitchStatement()

print(s.switch(1))

print(s.switch(3))

print(s.switch(13))

Theoutputwillbe:

___________________

January

March

Invalidmonth

___________________

說明:首先,創建一個名為PythonSwitchStatement定義一個switch()方法。它還針對特定的不同情況定義了其他功能。

switch()方法采用參數'month'并將其轉換為字符串,然后將其附加到大小寫文字中,然后將其傳遞給getattr()方法,然后返回該類中可用的匹配函數。

如果找不到匹配項,則getattr()方法將返回lambda函數作為默認值。

  字典映射替換

#Functiontoconvertnumberintostring

#Switcherisdictionarydatatypehere

defnumbers_to_strings(argument):

switcher={0:"zero",1:"one",2:"two",

}

#get()methodofdictionarydatatypereturns

#valueofpassedargumentifitispresent

#indictionaryotherwisethesecondargumentwill

#beassignedasthedefaultvalueofthepassedargumentreturnswitcher.get(argument,"nothing")

#Driverprogramif__name__=="__main__":

argument=0

printnumbers_to_strings(argument)

  通過Switcher對功能使用字典映射的示例

defone():

return"January"

deftwo():

return"February"

defthree():

return"March"

deffour():

return"April"

deffive():

return"May"

defsix():

return"June"

defseven():

return"July"

defeight():

return"August"

defnine():

return"September"

deften():

return"October"

defeleven():

return"November"

deftwelve():

return"December"

defnumbers_to_months(argument):

switcher={

1:one,

2:two,

3:three,

4:four,

5:five,

6:six,

7:seven,

8:eight,

9:nine,

10:ten,

11:eleven,

12:twelve

}

#Getthefunctionfromswitcherdictionary

func=switcher.get(argument,lambda:"Invalidmonth")

#Executethefunction

printfunc()

  使用字典映射返回值的示例

b={

'a':122,

'b':123,

'c':124,

'd':125

}

#takeuserinput

inp=input('inputacharacter:')

#-1isthedefaultvalueiftherearenokeysthatmatchtheinput

print('Theresultforinpis:',b.get(inp,-1))

  使用字典映射來切換星期幾

defweek(i):

switcher={

0:'Sunday',

1:'Monday',

2:'Tuesday',

3:'Wednesday',

4:'Thursday',

5:'Friday',

6:'Saturday'

}

returnswitcher.get(i,"Invaliddayoftheweek")

然后撥打week()使用不同的值來找出星期幾。

即week(2),輸出將是星期二,week(4),輸出將是星期四,而week(5.5)將輸出“星期幾無效”。

Python沒有內置的switch-case構造,但是您可以使用字典映射代替switchcase。Python開發人員出于充分的理由沒有包括switch-case結構。盡管許多程序員和開發人員一直在努力在Python中包含切換用例構造,但是無論是否考慮他們的建議,Python切換用例替代方案的效果都更好。想了解更多關于Python的信息,請繼續關注中培偉業。

主站蜘蛛池模板: 人妻少妇HEYZO无码专区 | 亚洲AV无码成人网站久久精品大 | 搞久久| 综合图区亚洲欧美另类图片 | 内射囯产旡码丰满少妇 | XXX少妇厨房XXX乱 | 无码制服丝袜人妻在线视频 | 国产精品女人呻吟在线观看 | 无码高潮少妇毛多水多水免费 | 亚洲国产香蕉碰碰人人 | 40岁大乳的熟妇在线观看 | 国产又色又爽又黄刺激视频 | 无码制服丝袜人妻在线视频 | 日韩加勒比一本无码精品 | 制服国产欧美亚洲日韩 | 中文日产幕无线码一区不卡 | 日韩人妻无码精品久久久不卡 | 婷婷色亚洲| 日本又黄又猛又爽免费视频 | 亚洲精品国产美女久久久 | 又黄又爽又色又刺激的视频 | 精品无码国产日韩制服丝袜 | аⅴ资源天堂资源库 | 成人乱码免费视频A片含羞草传媒 | 日本最大色倩网站WWW | 国产单亲乱视频 | 国内精品久久久久影院古代 | 久久国产精品成人免费 | 亚洲成年人网站在线观看 | 在线观看成人永久免费网站 | 久久超碰极品视觉盛宴 | 国产又粗又爽又猛的视频A片 | 噜噜噜在线视频 | 无码专区中文字幕无码野外 | 内射射满骚B含着小说 | 亚洲一区二区三区乱码在线欧洲 | 久久久亚洲欧洲日产AV | 国产成人a∨ | 国产又黄又猛又粗又爽的A片漫 | 日本毛茸茸的丰满熟妇 | 成人白浆超碰人人人人 |