Python分岐構造(switch)操作の概要

1788 ワード

Pythonにはswitch文はないが,本稿では主に辞書によるswitch文の機能を実現し,具体的には以下の通りである.
switch文はif...と同様にマルチブランチ構造を記述するプログラムに用いられる.elif….else文.
switch文表現の分岐構造はif...elif...else文表現よりも明確で、コードの可読性が高い
しかしpythonはswitch文を提供していません.
pythonは辞書でswitch文の機能を実現することができ、実現方法は2つのステップに分けられる.
まず、辞書を定義します.
次に、辞書のget()を呼び出して対応する式を取得します.
計算機:

from __future__ import division
def jia(x,y):
 return x+y
def jian(x,y):
 return x-y
def cheng(x,y):
 return x*y
def chu(x,y):
 return x/y
def operator(x,o,y):
 if o=='+':
  print (jia(x,y))
 elif o=='-':
  print (jian(x,y))
 elif o=='*':
  print (cheng(x,y))
 elif o=='/':
  print (chu(x,y))
 else:
  pass
operator(2,'/',4)

辞書でswitch操作を実現

from __future__ import division
def jia(x,y):
 return x+y
def jian(x,y):
 return x-y
def cheng(x,y):
 return x*y
def chu(x,y):
 return x/y
operator={"+":jia,"-":jian,"*":cheng,"/":chu}
print(operator["+"](3,2)) #operator["+"]   jia
print (jia(3,2)) #operator["+"](3,2)   jia(3,2)

実行結果:5 5

from __future__ import division
def jia(x,y):
 return x+y
def jian(x,y):
 return x-y
def cheng(x,y):
 return x*y
def chu(x,y):
 return x/y
operator={"+":jia,"-":jian,"*":cheng,"/":chu}
def f(x,o,y):
 p=operator.get(o)(x,y)
 print(p)
f(15,'/',5)

まとめ
以上、Python分岐構造(switch)操作の概要のすべてですが、皆さんの役に立つことを願っています.興味のある方は引き続き当駅の他の関連テーマを参照することができます.不足点があれば、伝言を歓迎します.友达の本駅に対する支持に感谢します!