国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中實現結構相似的函數調用方法

2020-02-23 00:18:21
字體:
來源:轉載
供稿:網友

python的dict用起來很方便,可以自定義key值,并通過下標訪問,示例如下:
代碼如下:
>>> d = {'key1':'value1',
... 'key2':'value2',
... 'key3':'value3'}
>>> print d['key2']
value2
>>>

lambda表達式也是很實用的東東,示例如下:
代碼如下:
>>> f = lambda x : x**2
>>> print f(2)
4
>>>

兩者結合可以實現結構相似的函數調用,使用起來很方便,示例如下:

示例一:不帶參數 
代碼如下:
#! /usr/bin/python
 
msgCtrl = "1 : pause/n2 : stop/n3 : restart/nother to quit/n"
 
ctrlMap = {
'1':    lambda : doPause(),
'2':    lambda : doStop(),
'3':    lambda : doRestart()}
 
def doPause():
        print 'do pause'
 
def doStop():
        print 'do stop'
 
def doRestart():
        print 'do restart'
 
if __name__ == '__main__':
        while True:
                print msgCtrl
                cmdCtrl = raw_input('Input : ')
                if not ctrlMap.has_key(cmdCtrl):break
                ctrlMap[cmdCtrl]()

示例二:帶參數

代碼如下:
#! /usr/bin/python
 
msgCtrl = "1 : +/n2 : -/n3 : */nother to quit/n"
 
ctrlMap = {
'1':    lambda x,y : x+y,
'2':    lambda x,y : x-y,
'3':    lambda x,y : x*y}
 
 
if __name__ == '__main__':
        while True:
                print msgCtrl
                cmdCtrl = raw_input('Input : ')
                if not ctrlMap.has_key(cmdCtrl):break
                print ctrlMap[cmdCtrl](10,2),"/n"

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 张家界市| 长治市| 田阳县| 东海县| 茶陵县| 安康市| 都兰县| 仲巴县| 屏山县| 阿坝| 凌云县| 依安县| 当雄县| 阿合奇县| 乌拉特前旗| 凌源市| 桑日县| 佛冈县| 宜宾县| 吴堡县| 肥东县| 怀柔区| 镇原县| 汤阴县| 赞皇县| 呈贡县| 临安市| 越西县| 怀来县| 大余县| 深圳市| 砀山县| 东海县| 府谷县| 体育| 淅川县| 芮城县| 舞阳县| 恩平市| 纳雍县| 内丘县|