python入门系列第十二篇: if语句

143 阅读2分钟
原文链接: zhuanlan.zhihu.com
格式
if <test1>:
  <statement1>
elif <test2>:
  <statement2>
else:
  <statement3>


代码实例
input = int(input('请输入您的数学分数'))
if input < 60:
    print('不及格')
elif 60 < input < 80:
    print('良好')
elif 80 < input <= 99:
    print('优秀')
else:
    print('满分')


时刻牢记, 在python中, 代码左侧的空白是用于缩进, 缩进这不只是编码风格而已, 它更是python语法的一部分。

python代码一般都是在当前所在行的末尾结束的, 但是有些特殊情况时候, 语句过长, 难以放在一行时候, 是允许其放置在多行。

L = [
    "kobe",
    "jx",
    "job"
]


if a == b and c == d and
    d == e and e == f:
    print(True)


# 三重字符串空梦想跨行
s = """
    aaa
    bbb
    ccc
    ddd"""

print(s)


真值测试

在python中:

- 任何非零的数字或者非空对象都为真
- 数字零, 空对象,特殊对象None都是假
- 比较和相等测试会递归应用在数据结构中
- 比较和相等测试会返回True, False.
- 布尔and 和or运算会返回真/假的操作对象


>>> bool(0)
False
>>> bool(1)
True
>>> bool('')
False
>>> bool([])
False
>>> bool({})
False
>>> bool(())
False
>>> bool(None)
False
>>>


x and y  # x与y都为真, 才是真
x or y # x或者y为真, 就为真 (短路计算)
not x # x为假则为真, x为真则为假


>>> 2 or 3 , 3 or 2
(2, 3)
>>> [] or 2
2
>>> [] or {}
{}
>>>


>>> 3 and 2, 2 and 3
(2, 3)
>>> [] and {}
[]
>>> 3 and []
[]
>>>


if/else 三元表达式

三元表达式换成if/else的写法

if x:
  a = y
else:
  a = z

用三元表达式则为:

a = y if x else z


>>> a = '偶数' if 8 / 2 == 4.0  else '奇数'
>>> a
'偶数'
>>>