导航:首页 > 编程语言 > python为什么去除了switch语句

python为什么去除了switch语句

发布时间:2024-09-22 12:57:26

‘壹’ 为什么Python中没有Switch/Case语句

官方的解释说,“用if… elif… elif… else序列很容易来实现 switch / case 语句”。而且可以使用函数字典映射和类的调度方法。

可以说官方的说明并没有解释什么,只是给出了解决方案。换句话说,没有回答为什么。我认为其实官方真正想说的是:“Python 不需要 switch / case 语句”。

‘贰’ 为什么Python中没有Switch/Case语句

同于我用过的其它编程语言,Python 没有 switch / case 语句。为了实现它,我们可以使用字典映射:


这段代码类似于:


Python 代码通常比处理 case 的标准方法更为简短,也可以说它更难理解。当我初次使用 Python 时,感觉很奇怪并且心烦意乱。而随着时间的推移,在 switch 中使用字典的 key 来做标识符变得越来越习以为常。


函数的字典映射

在 Python 中字典映射也可以包含函数或者 lambda 表达式:


虽然zero和one中的代码很简单,但是很多 Python 程序使用这样的字典映射来调度复杂的流程。


类的调度方法

如果在一个类中,不确定要使用哪种方法,可以用一个调度方法在运行的时候来确定。


很灵活,对吧?

官方说明

官方文档的解释说,“用if... elif... elif... else序列很容易来实现 switch / case 语句”。而且可以使用函数字典映射和类的调度方法。

阅读全文

与python为什么去除了switch语句相关的资料

热点内容
python输入单词统计个数 浏览:993
脚本软件提取源码 浏览:280
程序员能给自己的微信钱包刷钱么 浏览:67
怎么让小天才app查看宝贝的通讯录 浏览:620
dxgpdf 浏览:256
哪个命令 浏览:43
文件不能打包压缩 浏览:699
linux源码调试 浏览:948
全球所有c语言编译器 浏览:658
如何学好app安全 浏览:261
怎么给已经发表的文章加密 浏览:1000
php加密验签 浏览:168
如何新建app 浏览:17
python人脸识别某人 浏览:609
能免费解压软件的浏览器 浏览:840
耳机适配器加密狗 浏览:619
苹果为什么和安卓为什么换不了号 浏览:297
解压图片怎样快速导入 浏览:746
手机新建相册加密 浏览:822
单片机延时1秒 浏览:188