python - 条件判断

计算机之所以能自动完成,或者说按照我们设定的条件去执行相应的操作,就是因为其具有条件判断的能力。

比如随着年龄或者成绩输入的不同,会相应打印出不同的内容。

>>> age = 20
>>> if age >= 18:
	print('your age is',age)
	print('adult')

	
your age is 20
adult

python 采用缩进原则,如果条件判定为真,则把缩进的语句执行了。上例中,当if语句判定为Ture时,则把下面两行缩进的语句执行。当然我们也可以加一个else语句,此时如果if判定为False,则执行else中的语句。

>>> age = 20
>>> if age >= 30:
	print('your age is',age)
	print('adult')
else:
	print('your age is',age)
	print('teenager')

	
your age is 20
teenager

如果有多个分支需要分别判定,此时我们可以采用 elif 语句,elif其实是else if的缩写,所以一个完整的 if 判定语句如下

if <判定语句1>:
    执行语句1
elif <判定语句2>:
    执行语句2
elif <判定语句3>:
    执行语句3
......
else:
    执行语句

if 语句从上至下开始执行,若某一条件符合,则执行相应的语句,其后的语句不再判断和执行。

>>> age = 5
>>> if age >=18:
	print('adult')
elif age >=6:
	print('teenager')
else:
	print('kid')

	
kid

再看 input, 前面https://blog.csdn.net/baidu_38485156/article/details/81236907我们遇到过输入时出现的错误,我们提到是由于input 函数把输入默认为字符串导致的。例如

>>> birth = input('birth; ')
birth; 1982
>>> if birth <= 2000:
	print('00前')
else:
	print('00后')

	
Traceback (most recent call last):
  File "<pyshell#154>", line 1, in <module>
    if birth <= 2000:
TypeError: '<=' not supported between instances of 'str' and 'int'
    

那么如何解决这类问题?由于 input 返回的数据类型是str,不能和整型直接做比较,所以我们需要把 str 转换为整型,再进行比较。python 中内置了强制数据类型转换函数,int(),float()等

>>> birth = input('birth: ')
birth: 1982
>>> birth = int(birth)
>>> if birth < 2000:
	print('00前')
else:
	print('00后')

	
00前

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值