一 关于if的基本认识
暂时认识的程度:
if 主要就是
(1)创建了分支
(2)进行分支判断
二 判断值,True,False等
True: 某种程度上等同于 非0的数字
Flase: 某种程度上等同于 0 none
if经常用到比较判断
(1)数值比较:比数值大小即可。
(2)字符串比较
通过逻辑运算符比较时,字符中的判断标准是:
如果比较 ==,那么字符串完全一样则相等。
如果 是比较大小,则按字符的ASCII进行大小比较。
>>> strA="A"
>>> strB="A"
>>> strA==strB
True
>>> strA in strB
True
>>> strA is strB
True
>>> strC="C"
>>> strC > strA
True
>>>
(3)LIST的比较
感觉测了下,也不知道这么比较的意义何在?
>>> listA=[1,2,3]
>>> listB=[4,5,6]
>>> listA>listB
False
>>> listC=[3,2,1]
>>> listA>listC
False
三基本语法和备忘
2.1 python的基本语法
可以缺省后面的,只有if的block
py2里必须按block缩进写好,否则报错
if xxx :
block
elif xxx:
block
else xxx:
block
2.2 要注意节省,尽量少用多次判断,而多用单次判断
2.3 要注意:if判断是有先后次序的,并且只执行第1个为true的分支
多个有递进关系的条件,无论大于小于等,应该先判断更严的条件,否则后面的分支会失去意义。
四 各种if的试验
# -*- coding:utf-8 -*-
boys=raw_input("please enter boys nums:>>")
girls=raw_input("please enter girls nums:>>")
if boys>girls:
print "boys are much more"
if boys<girls:
print "girls are much more"
#试验看起来,if并没有要求这书上写的,一个if必须带一个else
if boys>girls:
print "boys are much more"
elif boys<girls:
print "girls are much more"
#试验看起来,if并没有要求这书上写的,一个if必须带一个else
#----------下面试几个,故意不合规的if--------
#(1)这个不节省,因为需要判断3次,除非是故意这样做
print ("test_if_01")
a=10
b=20
c=30
x=100
if x>10:
print("x is bigger than 10")
if x>20:
print("x is bigger than 20")
if x>30:
print("x is bigger than 30")
#(2)这个节省,写成了在一个完整的if里,但是1个if遇到第1个正确分支会结束
#判断逻辑不对,应该先严格后宽松,因为严格的需要先判断。
print ("test_if_02")
a=10
b=20
c=30
x=100
if x>a:
print("x is bigger than 10")
elif x>b:
print("x is bigger than 20")
elif x>c:
print("x is bigger than 30")
#(3)这个节省,写成了在一个完整的if里,但是1个if遇到第1个正确分支会结束
#判断逻辑不对,应该先严格后宽松,因为严格的需要先判断。
#一般来说,更严的就是更小的那个区间。
print ("test_if_03")
a=10
b=20
c=30
x=100
if x>c:
print("x is bigger than 30")
elif x>b:
print("x is bigger than 20")
elif x>a:
print("x is bigger than 10")
print ("test_if_04")
a=10
b=20
c=30
x=1
if x<a:
print("x is smaller than 10")
elif x<b:
print("x is smaller than 20")
elif x<c:
print("x is smaller than 30")
五 书上提供的几个if的准则---不是必须的但有用?没理解,关注
(1) 每个if一定配1个else
(2) 如果else永远都不应该被执行到,则可以在else die()
(3) if一般做多套2层就够了