刚刚学python的时候,时常纠结于python中没有C语言中 ? : 的实现,今天终于发现了两种python的实现方式:

(1) variable = a if exper else b

(2)variable = (exper and [b] or [c])[0]

(2) variable = bool(exper) and b or c

上面三种用法都可以达到目的,类似C语言中 variable = exper ? b : c;即:如果exper表达式的值为true则variable = b,否则,variable = c

例如:

a,b=1,2
max = (a if a > b else b)
max = (a > b and [a] or [b])[0] #list
max = (a > b and a or b)


更多相关文章

  1. Linux-C语言函数手册
  2. linux下的C语言编程(总结篇)
  3. C语言文件I/O 读取一个文件并输出出来 和 输出到另一个文件里面
  4. linux vim下如何让类似txt的文本,呈现出某种语言的高亮形式?
  5. Linux C语言实现的Socket通信
  6. c语言起泡排序
  7. 【linux】下的mkfifo 命令 和【C语言】中的mkfifo函数
  8. Linux系统下用C语言获取MAC地址
  9. 我是这样学习Linux下C语言编程的-编译命令gcc的使用

随机推荐

  1. 数据库中间件 MyCAT 源码分析 —— 调试
  2. Python PK C++,初学者该如何挑选?
  3. REPMGR高可用+VIP方案
  4. 注册中心 Eureka 源码解析 —— 应用实例
  5. Android学习笔记(十七)数据保存
  6. Spring Boot工程集成全局唯一ID生成器 Ui
  7. 注册中心 Eureka 源码解析 —— 应用实例
  8. 网关 Spring-Cloud-Gateway 源码解析 —
  9. Spring Cloud Eureka Server高可用之:在线
  10. 注册中心 Eureka 源码解析 —— 应用实例