国产探花免费观看_亚洲丰满少妇自慰呻吟_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"

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 淄博市| 出国| 大渡口区| 寻乌县| 濉溪县| 寿宁县| 新竹市| 海淀区| 永顺县| 定日县| 正阳县| 兰考县| 普格县| 水城县| 封丘县| 宁都县| 探索| 镇巴县| 兴安县| 滁州市| 唐海县| 毕节市| 德惠市| 宁明县| 和硕县| 高唐县| 留坝县| 博客| 洪洞县| 绍兴县| 勃利县| 邹城市| 墨脱县| 武宣县| 张北县| 普宁市| 澳门| 冕宁县| 江安县| 舒城县| 南宁市|