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


Posted in Python onJune 17, 2016

对于三目运算符(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 相关文章推荐
Python实现的下载8000首儿歌的代码分享
Nov 21 Python
python在windows下创建隐藏窗口子进程的方法
Jun 04 Python
构建Python包的五个简单准则简介
Jun 15 Python
详解Python中的元组与逻辑运算符
Oct 13 Python
Python实现字典去除重复的方法示例
Jul 31 Python
python安装scipy的方法步骤
Jun 26 Python
python实现简单聊天室功能 可以私聊
Jul 12 Python
使用python实现希尔、计数、基数基础排序的代码
Dec 25 Python
Python虚拟环境的创建和包下载过程分析
Jun 19 Python
Python调用REST API接口的几种方式汇总
Oct 19 Python
python3 os进行嵌套操作的实例讲解
Nov 19 Python
python 如何在 Matplotlib 中绘制垂直线
Apr 02 Python
python运行时间的几种方法
Jun 17 #Python
从局部变量和全局变量开始全面解析Python中变量的作用域
Jun 16 #Python
实例讲解Python中global语句下全局变量的值的修改
Jun 16 #Python
最大K个数问题的Python版解法总结
Jun 16 #Python
Python中的多行注释文档编写风格汇总
Jun 16 #Python
Python构造自定义方法来美化字典结构输出的示例
Jun 16 #Python
浅谈Python中chr、unichr、ord字符函数之间的对比
Jun 16 #Python
You might like
PHP HTML JavaScript MySQL代码如何互相传值的方法分享
2012/09/30 PHP
php json转换成数组形式代码分享
2014/11/10 PHP
支持中文的PHP按字符串长度分割成数组代码
2015/05/17 PHP
PHP memcache在微信公众平台的应用方法示例
2017/09/13 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
javascript将异步校验表单改写为同步表单
2015/01/27 Javascript
jQuery实现contains方法不区分大小写的方法
2015/02/13 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
jQuery动态添加可拖动元素完整实例(附demo源码下载)
2016/06/21 Javascript
基于JavaScript实现复选框的全选和取消全选
2017/02/09 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
关于Angularjs中自定义指令一些有价值的细节和技巧小结
2018/04/22 Javascript
javascript实现手动点赞效果
2019/04/09 Javascript
详解Vue串联过滤器的使用场景
2020/04/30 Javascript
Vue——解决报错 Computed property &quot;****&quot; was assigned to but it has no setter.
2020/12/19 Vue.js
Vue中避免滥用this去读取data中数据
2021/03/02 Vue.js
[56:21]LGD vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python open读写文件实现脚本
2008/09/06 Python
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
Python编程判断这天是这一年第几天的方法示例
2017/04/18 Python
Python实现采用进度条实时显示处理进度的方法
2017/12/19 Python
Flask模拟实现CSRF攻击的方法
2018/07/24 Python
强悍的Python读取大文件的解决方案
2019/02/16 Python
Python中的self用法详解
2019/08/06 Python
基于MSELoss()与CrossEntropyLoss()的区别详解
2020/01/02 Python
Python学习之os模块及用法
2020/06/03 Python
python 实现客户端与服务端的通信
2020/12/23 Python
Daisy London官网:英国最大的首饰集团IBB旗下
2019/02/28 全球购物
销售顾问岗位职责
2014/02/25 职场文书
教师应聘自荐信范文
2014/03/14 职场文书
交通事故调解协议书
2014/04/16 职场文书
秋季运动会演讲稿
2014/09/16 职场文书
求职简历自我评价2015
2015/03/10 职场文书
那些美到让人窒息的诗句,值得你收藏!
2019/08/20 职场文书
pytorch交叉熵损失函数的weight参数的使用
2021/05/24 Python
SQL实现LeetCode(180.连续的数字)
2021/08/04 MySQL