if测试和Python语法

if测试和Python语法

if语句

if语句比较容易,是Python的一种流程控制(还有while\for等),判断测试条件真假选择不同的流程分支。

语句构成:

1
2
3
4
5
6
if <test1>: // test1 True, 执行state1
<state1>
elif <test2>: // test2 True, 执行state2
<state2>
else: // 都是 False, 执行stateOther
<stateOther>

需要注意的是if复合语句嵌套时候的正确缩进。

Python语法

  • 语句是逐行运行,除非使用流程控制语句;
  • 块和语句的边界使用缩进检测;
  • 复合语句=首行+ “:” +缩进语句;
  • 空行、空格以及注释被忽略;
  • docstring被忽略,可是由工具显示;
  • 避免混合使用指标符合空格;

真值测试

  • 任何非零数或非空对象都是真;
  • 数字零、空对象以及特殊对象None是假;
  • 比较和相等测试可以应用到所有的数据结构中;
  • 布尔andor返回真或假的操作对象;
    • X and Y :从左至右,返回第一个假值
    • X or Y :从左至右,返回第一个真值

if/else三元表达式

1
2
3
4
if X:
A = Y
else:
A = Z

可以直接写成:

A = Y if X else Z

也可以:

A = ((X and Y) or Z)

前提是:Y是真值。