亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Python 使用dict實(shí)現(xiàn)switch的操作

瀏覽:5日期:2022-06-23 10:14:32

Python3還是沒有switch,可以利用if-else來實(shí)現(xiàn),但是非常不方便。使用dict來實(shí)現(xiàn)會(huì)比較簡(jiǎn)潔優(yōu)雅。

# -*- coding: utf-8 -*-'''Python利用dict實(shí)現(xiàn)switch''' def add(x, y): return x + y def subtract(x, y): return x - y def multiply(x, y): return x * y def divide(x, y): assert(y != 0)return x / y mapping = {'+': add, '-': subtract, '*': multiply, '/': divide} def cal(x, y, symbol='+'): assert(symbol in mapping) return mapping.get(symbol)(x, y) if __name__ == '__main__': result = cal(3, 0, '&')

補(bǔ)充:python 字典dict實(shí)現(xiàn)switch case【實(shí)際應(yīng)用】(非dict.get()方法實(shí)現(xiàn))

看了不少帖子,幾乎都是采用字典的.get()方法實(shí)現(xiàn),據(jù)說有個(gè)弊端:“會(huì)將字典每個(gè)帶括號(hào)的方法都執(zhí)行一遍”。

以下方法可避免該弊端,并可以傳參。如有不足請(qǐng)指正!

#!/usr/bin/python3 # conf_cmd = conf_items['cmd'].split(':')[0] test_no = 'T1'#test_no = 'T2'#test_no = 'T3' id = 1 def test1(id): print('test1:%d' % id) def test2(id): print('test2') def test3(id): print('test3') funcs = {'T1': test1, 'T2': test2, 'T3': test3} try: func = funcs[test_no] func(id)except Exception: pass

輸出:

test1:1

補(bǔ)充:Python實(shí)現(xiàn)類似switch的分支結(jié)構(gòu)

switch語句相信大家都很熟悉,而且swith語句表達(dá)的分支結(jié)構(gòu)比if...elif...else語句表達(dá)更清晰,代碼的可讀性更高,但是在Python中,卻沒有提供這一個(gè)關(guān)鍵字。那我們?cè)撊绾瓮ㄟ^其他方式來實(shí)現(xiàn)這類似的結(jié)構(gòu)呢?

雖然沒有switch語句,但是我們可以通過Python中的dict即字典來實(shí)現(xiàn)類似switch結(jié)構(gòu)的方法

實(shí)現(xiàn)代碼如下:

def operator(o,x,y): result={ ’+’ : x+y, ’-’ : x-y, ’*’ : x*y, ’/’ : x/y } print(result.get(o))oper=input()//接收從鍵盤輸入的數(shù)據(jù)operator(oper,4,2)

運(yùn)行效果如下所示:

Python 使用dict實(shí)現(xiàn)switch的操作

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产亚洲美女精品久久久 | 亚洲精品在线第一页 | 免费观看欧美精品成人毛片能看的 | 国产精品亚洲午夜一区二区三区 | 亚洲国产精品视频在线观看 | 91视频免费观看高清观看完整 | 91最新免费观看在线 | 黄色片一级免费 | 好大好硬好长好爽a网站 | 青青青在线日本免费视频 | 欧美黄色免费看 | 香蕉福利久久福利久久香蕉 | 国产高清久久 | 欧美一区二区在线免费观看 | 成人自拍小视频 | 亚洲国产日韩在线 | 谁有毛片网址 | 黑人操中国美女 | 亚洲综合一区二区三区四区 | 午夜在线亚洲男人午在线 | 精品综合久久久久久97超人该 | 亚洲精品福利 | 91视频国产精品 | 在线观看国产区 | 国产日韩视频在线 | jizjizjizji在线观看 | 国产成人+亚洲欧洲 | 欧美日韩在线观看视频 | 久久永久免费视频 | 女人a级毛片 | 九九视频高清视频免费观看 | 麻豆国产精品一二三在线观看 | 国产成人精品999在线 | 91久久国产露脸国语对白 | 国产在线观看入口 | 在线免费视频国产 | 91秒拍国产福利一区 | 亚洲欧美专区精品伊人久久 | 亚洲午夜在线观看 | 国内国外精品一区二区 | 成人免费小视频 |