Python3中的if语句

1:if语句

Python中的if语句是选择操作来执行,其语法形式如下:

if test1:
	statements1
elif test2:        # 是可选的  
	statements2
elif test3:        # 是可选的
	statements3
else:              # 是可选的
	statements4

"""
elif ,else 是可选的,也就是说在语法上,可有可无,依据自己实际需要而定;
statements1到statements4 中也可以包含if语句,即可以进行if嵌套

"""

1.1:一般形式

单if:

if 1:
	print('true')

score = 61
if score >= 60:
	print('及格')


"""
输出结果:
true
及格
"""

1.2:if...else :

score = 61
if score >= 60:
	print('及格')
else:
	print('不及格')

"""
输出:
及格
"""

1.3:多路分支:

# score = int(input('输入一个整数:'))
score = 89
if score > 100:
	print('数据异常')
elif score >= 80:
	print('优')
elif score >= 70:
	print('良')
elif score >= 60:
	print('及格')
else:
	print('不及格')

"""
优
"""

2:真值与布尔测试

Python中:
a:所有的对象都有一个固定的布尔真或者假值;

s = 'hello'
print(bool(s))  # 输出 True

s = ''
print(bool(s))  # 输出 False


b:任何非0数字,非空对象都为真;

# 整数
print(bool(123))
# 浮点数
print(bool(3.1415))
# 字符串
print(bool('python'))
# 列表
print(bool([1,2,3]))
# 元组
print(bool((1,2,3)))
# 集合
print(bool({1,2,3,4}))
# 字典
print(bool({'age':18}))

"""
都返回True
"""


c:数字0,空对象,特殊对象None都被认作是假;
     空对象:
       字符串:''
        列表:[],list()
        元组:(),tuple()
        字典:{},dict()
        集合:set()

# 整数
print(bool(0))
# 浮点数
print(bool(0.0))
# 字符串,空字符串
print(bool(''))
# 列表
print(bool([]))
# 元组
print(bool(()))
# 集合
print(bool(set()))
# 字典
print(bool(dict()))
print(bool(None))

"""
全部输出False
"""

d:比较和相等测试会递归地应用到数据结构中;
e:比较和相等测试会返回True或者False;
f:布尔and和or运算符会返回真或假的操作数对象;
g:布尔运算符在结果确定的时候立即停止计算;

# and :只要有一个为假,立即停止计算,并返回假的操作数对象;都为真返回最后一个操作数对象
print(10 and 20,20 and 10)   # 20 10
print([] and 10)   # []
print(10 and [])   # []

# or :只要有一个为真,立即停止计算,并返回真的操作数对象;都为假返回最后一个操作数对象
print(10 or 20,20 or 10)   # 10 20
print([] or 10)   # 10
print(10 or [])   # 10
print([] or {})   # {}

3:if/else三元表达式

如下if语句:
if  x:
    a = y
else:
    a = z

可以改写为:
a = y if x else z

score = 88
ret = ''
if score >= 60:
	ret = '及格'
else:
	ret = '不及格'

print(ret)

# 优点:1:代码量少;2:可以把if/else 三元表达式嵌套在其他语句中
ret = '及格' if score >=60 else '不及格'
print(ret)

# 
print('及格' if score >=60 else '不及格')

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章