py学习之路7---判断

特殊类型

py包含几个特殊类型,True,False都是特殊的内置类型。他们是0和1的特殊表现,其含义为“真”和“否”。注意这点与其他语言的不同,比如c里0表示否,非0表示真。

True和False作为比较,问句或其他一些操作的结果。


比较两值相等

注意,单个等号表示赋值给某个变量,比较是否相等用的是两个等号:

<pre name="code" class="python">>>> 1 == 1
True
>>> 1 == 2
False
>>> "a" == "a"
True

 py会比较两端的值,如果相等则返回True,否则返回False。 

即使类型不同,py也可以比较:

>>> 1 == 1.0
True
>>> 1 == "1"
False
将字符串的截取和比较相结合:

>>> a = "a young man"
>>> b = "a old man"
>>> a[-len("man"):-1] == b[-len("man"):-1]
True

也可以对序列和字典等进行比较,不过序列要求顺序与内容完全相同,字典要求每个键与值的与另一个完全相同:

>>> a = [1,2,3]
>>> b = [1,2,3]
>>> c = [2,3,1]
>>> a == b
True
>>> a == c
False

>>> a = {1:1,2:2}
>>> b = {1:1,2:2}
>>> c = {2:2,1:1}
>>> a == b
True
>>> a == c
True

比较两个值不等
感叹号表示否定,通过!=来比较两个值是否不等

>>> 1 != 1
False
>>> 2 != 1
True

!=的结果与==相反。


比较两值大小

py提供了<和>两个符号用于比较大小:

>>> 1 > 2
False
>>> 2 < 3
True

对字符的排序可以参考ascii码表,在码表上值越大的,在大于小于的判断中就越大。一般来说从小到大是“A”最小,然后一直到“Z”,“a”比"Z"大,最大是"z"。

>>> "a" > "b"
False
>>> "a" > "B"
True
对字符串比较时py会从第一个开始比较,直到找到一个不同的字符为止,由这两个字符的比较结果来决定最终的结果:

>>> "hello py" > "hello PY"
True

<这里介绍两个方法,分别是可以让字符串中所有大写字符变小写的lower,和让所有小写字符变大写的upper

>>> "Hello".lower() == "hello"
True
>>> "Hello".upper() == "HELLO"
True

>


此外py也支持大于等于和小于等于:

>>> 2 >= 2
True
>>> 3 <= 1
False

取反值

使用单词not对判断结果取反:

>>> not True
False
>>> not 0
True

对多个结果进行合并

就是py中的“与”和“或”操作,有“and”和“or”表示:

>>> True or False
True
>>> True and False
False


让判断影响程序

使用py中的保留字if可以让程序根据真与否运行出不同的结果:

>>> if 1 > 2:
	print("NO")

	
>>> if 2 > 1:
	print("Yes")

	
Yes
仅当if和冒号之间的值为真是才执行下面一段 代码

代码块指有相同缩进的一句或多句代码,他们在程序中与其他部分相对独立。在py中出现冒号时,就说明py要执行某块代码块了。py通过缩进确定代码块,所以缩进很重要,我们应使用编译器确定缩进。


因为if里执行了一段代码,而if本身也是一句代码,所以我们可以嵌套的使用if:

>>> score = 61
>>> if(score > 60):
	if(score < 70):
		print("及格")
	if(score > 70):
		print("优秀")
这里如果score<60的话剩下的两个判断都不会被执行。


elif和else

可以使用elif进行一个以if开头的连续的判断,用else来处理剩下的情况:

>>> score = 87
>>> if(score < 60):
	print("不及格")
elif(score < 70):
	print("及格")
elif(score < 80):
	print("良好")
else:
	print("优秀")

	
优秀

 

如果前三个判断都为否的话就执行最后的else。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值