Python中实现结构相似的函数调用方法
python的dict用起来很方便,可以自定义key值,并通过下标访问,示例如下:
>>>d={'key1':'value1',
...'key2':'value2',
...'key3':'value3'}
>>>printd['key2']
value2
>>>
lambda表达式也是很实用的东东,示例如下:
>>>f=lambdax:x**2 >>>printf(2) 4 >>>
两者结合可以实现结构相似的函数调用,使用起来很方便,示例如下:
示例一:不带参数
#!/usr/bin/python
msgCtrl="1:pause\n2:stop\n3:restart\nothertoquit\n"
ctrlMap={
'1': lambda:doPause(),
'2': lambda:doStop(),
'3': lambda:doRestart()}
defdoPause():
print'dopause'
defdoStop():
print'dostop'
defdoRestart():
print'dorestart'
if__name__=='__main__':
whileTrue:
printmsgCtrl
cmdCtrl=raw_input('Input:')
ifnotctrlMap.has_key(cmdCtrl):break
ctrlMap[cmdCtrl]()
示例二:带参数
#!/usr/bin/python
msgCtrl="1:+\n2:-\n3:*\nothertoquit\n"
ctrlMap={
'1': lambdax,y:x+y,
'2': lambdax,y:x-y,
'3': lambdax,y:x*y}
if__name__=='__main__':
whileTrue:
printmsgCtrl
cmdCtrl=raw_input('Input:')
ifnotctrlMap.has_key(cmdCtrl):break
printctrlMap[cmdCtrl](10,2),"\n"
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短