条件测试
If语句的核心都是一个值为True和False的表达式,这种表达式被称为条件测试(别名为布尔表达式)。使用两个等号(==)检查是否相等;判断不相等(!=);比较数字可以有(>=)(>)(<=)(<);检查多个条件可以使用and和or关键字;使用关键字in检查值是否在列表中;使用关键字not in确定值未包含在列表中
In [5]: a,b=2,-9
In [6]: (a>=2) and (b<0)
Out[6]: True
In [7]: ls=['a','b','c']
In [8]: 'a' not in ls
Out[8]: False
If语句
if conditional_test:
do something
第一行中可包含任何条件测试,如果为True,则会运行紧跟在测试后面的缩进的代码块;如果为False,忽略代码块。
In [9]: if 30>9:
...: print("Big one")
...:
Big one
if-else语句
In [1]: age=17
In [2]: if age>=18:
...: print('you are married!')
...: else:
...: print('you are too young.')
...:
you are too young.
if-elif-else语句
In [1]: age=12
In [2]: if age<4:
...: print ('Your admission cost is $0.')
...: elif age<18:
...: print('Your admission cost is $5.')
...: else:
...: print('Your admission cost is $10.')
...:
Your admission cost is $5.
Python并不要求if-elif结构后面必须有else代码块
In [3]: age=12
In [4]: if age<4:
...: price=0
...: elif age<18:
...: price=5
...: elif age<65:
...: price=10
...: elif age>=65:
...: price=5
...:
In [5]: print ('Your admission cost is $'+str(price)+'.')
Your admission cost is $5.
判断列表为空
In [3]: ls=[]
In [4]: if ls:
...: print(ls[0])
...: else:
...: print('ls is null')
...:
ls is null
设置if语句的格式
PEP 8提供的唯一建议是,在诸如>= 、<=、==等比较运算符两边各添加一个空格,例如if age < 4:要比if age<4:好。这样的空格不会影响Python对代码的解读,而只是让代码阅读起来更容易。