浅谈python为什么不需要三目运算符和switch

yipeiwu_com6年前Python基础

对于三目运算符(ternary operator),python可以用conditional expressions来替代

如对于x<5?1:0可以用下面的方式来实现

1if x<5else 0

注: conditional expressions是在python 2.5之前引入的,所以以上代码仅适用于2.5以及之后的版本

对于2.5之前的版本,可以用下面这种形式

X<5and1or 0

对于switch,我们完全可以用dictionary来实现,看下面的例子

>>>def switch(choice):
return dict(enumerate(range(4)))[choice]

>>> switch(1)
>>> switch(0)


values = {
  value1: do_something1,
  value2: do_something2,
  ...
  valueN: do_somethingN,
  }

values.get(var, do_default_something)()


  

以上就是小编为大家带来的浅谈python为什么不需要三目运算符和switch全部内容了,希望大家多多支持【听图阁-专注于Python设计】~

相关文章

docker-py 用Python调用Docker接口的方法

docker-py 用Python调用Docker接口的方法

官方文档:【https://docker-py.readthedocs.io/en/stable/images.html】 众所周知,Docker向外界提供了一个API来管理其中的资源。...

谈谈如何手动释放Python的内存

在上篇博客中,提到了对一个脚本进行的多次优化。当时以为已经优化得差不多了,但是当测试人员测试时,我才发现,踩到了Python的一个大坑。 在上文的优化中,对每500个用户,会进行一些计算...

Django框架视图函数设计示例

本文实例讲述了Django框架视图函数。分享给大家供大家参考,具体如下: 视图函数即为处理HTTP请求的python函数。一般情况下,视图函数的功能是通过模型层对象处理数据,然后通过下面...

在Python中操作列表之List.pop()方法的使用

 pop()方法从列表移除并返回最后一个对象或obj。 语法 以下是pop()方法的语法: list.pop(obj=list[-1]) 参数  &n...

Python OpenCV图像指定区域裁剪的实现

在工作中。在做数据集时,需要对图片进行处理,照相的图片我们只需要特定的部分,所以就想到裁剪一种所需的部分。当然若是图片有规律可循则使用opencv对其进行膨胀腐蚀等操作。这样更精准一些。...