pyhton中实现switch代码

pyhton中实现switch代码

在php教程中有
switch ($value) {    
case 'a':        
$result = $x * 5;       
 break;    
case 'b':        
$result = $x + 7;       
 break;   
 case 'c':       
 $result = $x - 2;        
break;
}

Python的等价实现为

choice = 'ham'
print {'spam':  1.25,           # A dictionary-based 'switch'
       'ham':   1.99,           # Use has_key or get for default
       'eggs':  0.99,
       'bacon': 1.10}[choice]

看一个更详细的实例

def a(s):
    print s
def switch(ch):
    try:
      {'1': lambda : a("one"),
       '2': lambda : a("two"),
      '3': lambda : a("three"),
       'a': lambda : a("Letter a")
      }[ch]()
    except KeyError:
      a("Key not Found")

 

 

eg:

>>switch('1')
one
>>switch('a')
Letter a
>>switch('b')
Key not Found
 

时间: 2024-09-20 19:36:28

pyhton中实现switch代码的相关文章

ASP.NET程序中常用编程代码(一)

asp.net|编程|程序 1.为按钮添加确认对话框 Button1.Attributes.Add("onclick","return confirm('确认?')");button.attributes.add("onclick","if(confirm('are you sure...?')){return true;}else{return false;}") 2.删除表格选定记录 //获得DataGrid主键int i

ASP.NET程序中常用编程代码

ASP.NET程序中常用编程代码 1.为按钮添加确认对话框 Button1.Attributes.Add("onclick","return confirm('确认?')");button.attributes.add("onclick","if(confirm('are you sure...?')){return true;}else{return false;}") 2.删除表格选定记录 //获得DataGrid主键in

C/C++中的switch语句使用注意

switch是一个专门用于处理多分枝的语句,在分支多的时候代替if语句简化代码.本文罗列一下switch的基本用法以及一些注意点,并且验证一些奇怪的地方. 本文代码在windows 8.1下使用Dev-c编写,测试. 一个样例 01 #include <iostream> 02 #include <cstdio> 03 using namespace std; 04 #define LL long long 05 int x; 06 int main(void) 07 { 08  

Android的webView中获得Html代码

需求是,将网页显示在webview中,但是有的时候会出出现400或者服务器无法侦测,如服务器已经停止了, 但是webview还是会请求.那么这么错误都会显示在webview上面,所以我想拦截这些错误. 类似这种问题,我们可以考虑下现在市面上的浏览器的实现.比如手机上的UC浏览器,其实细心的同学会发现,在UC浏览器上,UC浏览器每次加载网页的时候都先到自已的服务器过一遍,目的是要检测目标网页是否可加载,可显示,如果不能,则返回错误指令,然后交给浏览器调用自身存在的错误提示页面,显示给用户,那他检测

settings-无法再android系统setting中的actionbar中添加switch

问题描述 无法再android系统setting中的actionbar中添加switch 在系统setting中添加了一个自己的选项.可惜在界面中的actionbar上无法添加switch 系统的蓝牙setting中有相同的结构.源码的添加switch代码如下: 大神们!!!求解啊!!!!!! Activity activity = getActivity(); Switch actionBarSwitch = new Switch(activity); if (activity instanc

Swift编程中的switch...case语句实例解析_Swift

Swift中的switch...case语句可以判断对象类型, Objective-C中则必须是整数. 不可以穿透,可以不写break, var rank = "A" switch rank{ case "A": //相当于if print("优") case "B": // 相当于else if print("优") case "C": // 相当于else if print(&quo

Swift中swift中的switch 语句_Swift

废话不多说了,直接给大家贴代码了,具体代码如下所示: /** switch 语句 */ let str = "aAbBacdef" let str2 = "aAbBadef" let str3 = "aAbBadeff" // var array = []; for c in ["A", "a", str3] { switch c { // case "a": case "a&

VS中常用C#代码段快速输入

Visual Studio 中有很多代码段都可以直接简写然后按TAB快速输入编译器中,为了提高编程效率,特此查阅资料,罗列总结.  1.       ~              创建析构函数               ~Program()                     {                     }  2.     checked                       创建checked块             checked                

biginteger-Java中n!的代码看不懂啊,求解释

问题描述 Java中n!的代码看不懂啊,求解释 import java.math.BigInteger; import java.util.*; public class Main{ protected static ArrayList table = new ArrayList(); static { table.add(BigInteger.valueOf(1)); } public static synchronized BigInteger factorial(int x) { for