第一次学习python,发现python3没有switch case ,查看了有关资料,在不涉及class的下,有用if ... elif......elif.....else的 还有用 map的 所以在这里我采用了map的方法。
card=[]
def fun1(): #往card中添加元素
name=input(">>>")
card.append(name)
return name
def fun2(): #遍历card
for name in card:
print(name)
def fun3(): #退出程序
exit(0)
#自己定义的用来实现switch-case的方法
def function(x):
swicher = { #定义一个map,相当于定义case:func()
'1':fun1,
'2':fun2,
'3':fun3,
'4':lambda :print('default function')
}
func = swicher.get(x,'4') #从map中取出方法
return func() #执行
while True:
cmd = input('command(enter integer) : ')
function(cmd)
#结果:command(enter integer) : 1()
# >>>kkkk
# command(enter integer) : 1
# >>>333
# command(enter integer) : 2
# kkkk
# 333
#command(enter integer) : 3(退出程序)
后来感觉这样做有点2.
作为一个编程菜鸡,写的blogs有什么问题,还望大家多多指.
参考文献:https://www.pydanny.com/why-doesnt-python-have-switch-case.html