Python中實現(xiàn)switch功能實例解析
前言
今天在學(xué)習(xí)python的過程中,發(fā)現(xiàn)python沒有switch這個語法。于是就想在python中如何才能實現(xiàn)這個功能呢?
正文
本文中我們對switch的使用模擬為正常的數(shù)據(jù)庫的增刪改查操作的對應(yīng),如'select
對應(yīng)'select action'等。
1.簡單的if-else
正如我們所知,python中有if語句,而且當(dāng)時學(xué)習(xí)C的時候,學(xué)到if-else時引出的的替代品就是switch,兩者可以完美的互相替代,需要注意的是在python中else if簡化成了elif。如下所示:
#!/usr/bin/env python user_cmd = raw_input("please input your choice:\n") if usercmd == "select" ops = "select action" elif usercmd == "update" ops = "update action" elif usercmd == "delete" ops = "delete action" elif usercmd == "insert" ops = "insert action" else ops = "invalid choice!" print ops `</pre>
2.使用字典
這里我們使用到了字典的函數(shù):dict.get(key, default=None)。key--字典中要查找的值,default--如果指定鍵的值不存在時,返回該默認(rèn)值。如下所示:
#!/usr/bin/env python
usercmd = raw_input("please input your choice:\n")
dic = {'select':'select action','update':'update action','delete':'delete action','insert':'insert action'}
defaultitem = 'invalid choice!'
ops = dic.get(usercmd,defaultitem)
print ops
3.使用lambda函數(shù)結(jié)合字典
lambda的一般形式是關(guān)鍵字lambda后面跟一個或多個參數(shù),緊跟一個冒號,以后是一個表達(dá)式。lambda是一個表達(dá)式而不是一個語句。它能夠出現(xiàn)在Python語法不允許def出現(xiàn)的地方,這里就不再多加描述。如下所示:
#!/usr/bin/env python
usrcmd = raw_input("please input your choice:\n")
dic = {'select': lambda : "select action",
'update': lambda : "update action",
'delete': lambda : "delete action",
'insert': lambda : "insert action"}
print cho[usr_cmd]()
總結(jié)
以上就是本文關(guān)于Python中實現(xiàn)switch功能實例解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
- python switch 實現(xiàn)多分支選擇功能
- Python通過字典映射函數(shù)實現(xiàn)switch
- Python為何不支持switch語句原理詳解
- Python基于字典實現(xiàn)switch case函數(shù)調(diào)用
- Python Switch Case三種實現(xiàn)方法代碼實例
- 使用 Python 實現(xiàn)簡單的 switch/case 語句的方法
- Python分支結(jié)構(gòu)(switch)操作簡介
- python中Switch/Case實現(xiàn)的示例代碼
- 淺談python為什么不需要三目運算符和switch
- Python 使用dict實現(xiàn)switch的操作
相關(guān)文章
Python多進(jìn)程multiprocessing用法實例分析
這篇文章主要介紹了Python多進(jìn)程multiprocessing用法,結(jié)合實例形式分析了Python多線程的概念以及進(jìn)程的創(chuàng)建、守護(hù)進(jìn)程、終止、退出進(jìn)程、進(jìn)程間消息傳遞等相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
詳細(xì)講解用Python發(fā)送SMTP郵件的教程
這篇文章主要詳細(xì)講解了用Python發(fā)送SMTP郵件的教程,包括在郵件中添加圖片等文件,強(qiáng)烈推薦!需要的朋友可以參考下2015-04-04
python將字符串轉(zhuǎn)換成數(shù)組的方法
這篇文章主要介紹了python將字符串轉(zhuǎn)換成數(shù)組的方法,涉及Python操作字符串與數(shù)組的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04
Python網(wǎng)頁解析利器BeautifulSoup安裝使用介紹
這篇文章主要介紹了Python網(wǎng)頁解析利器BeautifulSoup安裝使用介紹,本文用一個完整示例一步一步安裝了BeautifulSoup的安裝和使用過程,需要的朋友可以參考下2015-03-03
Python基于datetime或time模塊分別獲取當(dāng)前時間戳的方法實例
今天小編就為大家分享一篇關(guān)于Python基于datetime或time模塊分別獲取當(dāng)前時間戳的方法實例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-02-02

