今天给各位分享索爱mk16i的知识,其中也会对nokia e70进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文导读目录:
pythonswitchcase语句(为什么Python中没有Switch/Case语句
为什么Python中没有Switch/Case语句
不同于我用过的其它编程语言,Python没有switch/case语句。为了实现它,我们可以使用字典映射:Pythondefnumbers_to_strings(argument):switcher={:“zero“,:“one“,:“two“,}returnswitcher.get(argument,“nothing“)这段代码类似于:Pythonfunction(argument){switch(argument){case:return“zero“;case:return“one“;case:return“two“;default:return“no thing“;};};Python代码通常比处理case的标准方法更为简短,也可以说它更难理解。当我初次使用Python时,感觉很奇怪并且心烦意乱。而随着时间的推移,在switch中使用字典的key来做标识符变得越来越习以为常。函数的字典映射在Python中字典映射也可以包含函数或者lambda表达式:Pythondefzero():return“zero“defone():return“one“defnumbers_to_functions_to_strings(argument):switcher={:zero,:one,:lambda:“two“,}#Getthefunctionfromswitcherdictionaryfunc=switcher.get(argument,lambda:“nothing“)#Executethefunctionreturnfunc()虽然zero和one中的代码很简单,但是很多Python程序使用这样的字典映射来调度复杂的流程。类的调度方法如果在一个类中,不确定要使用哪种方法,可以用一个调度方法在运行的时候来确定。PythonclassSwitcher(object):defnumbers_to_methods_to_strings(self,argument):“““Dispatchmethod“““#prefixthemethod_namewith’number_’becausemethodn ames#cannotbeginwithaninteger.method_name=’number_’+str(argument)#Getthemethodfrom’self’.Defaulttoalambda.method=getattr(self,method_name,lambda:“nothing“)#Callthemethodaswereturnitreturnmethod()defnumber_(self):return“zero“defnumber_(self):return“one“defnumber_(self):return“two“很灵活,对吧?官方说明官方的解释说,“用if...elif...elif...else序列很容易来实现switch/case语句”。而且可以使用函数字典映射和类的调度方法。可以说官方的说明并没有解释什么,只是给出了解决方案。换句话说,没有回答为什么。我认为其实官方真正想说的是:“Python不需要switch/case语句”。真的是这样吗?是的索爱mk16i(nokia e70)。但是还有别的原因。我听牛人说过,在代码中switch/case语句真的很难调试。就我个人而言,我发现当运行到大量嵌套的用作代码分支映射的字典里,上述说法就站不住脚了。想想吧,一个超过条语句的嵌套字典,和一个嵌套个以上case的switch/case代码块一样,都是难以调试的。字典映射运行更快?Python没有case语句,使用其它语言的衡量标准是没有意义的,因为在某种语言中运行更快并不意味着在另一种语言中也一样。让我们继续。Python实现方法的显著优点有时候我会遇到Python的实现方法比switch/case语句更好用的情况,例如在运行的时候,需要从映射里添加或者删除一些潜在的选项。每当这时,多年来使用字典映射和调度方法的实践让我受益匪浅。现在我觉得,我再也无法回到依赖switch/case语句的日子了。结束语Python迫使我积累了很多映射的实践经验,对我来说是塞翁失马,焉知非福。没有switch/case语句可用的约束,促使我想到了可能不会用来开发的方法和主意。有意或无意中,Python没有switch/case语句已成为一种社会建构,并让我成为一个更优秀的程序员。综上所述,所以我认为这种意外的社会构建解释比官方的“用这个来代替”的说明要好得多。
为什么Python中没有Switch/Case语句
nokia e70c#代码规范分析工具(c#代码规范检查)
本文主要介绍c#代码规范分析工具(c#代码规范检查),下面一起看看c#代码规范分析工具(c#代码规范检查)相关资讯索爱mk16i(nokia e70)。
代码注释同意............................................服务器。
模块标题注释规范......................................会话
索爱mk16i的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于nokia e70、索爱mk16i的信息别忘了在本站进行查找喔。