******
20230217
******
# 逻辑控制与循环 逻辑判断—True & False (布尔类型 Boolean Type)
t1 = 1 > 2
t2 = 1 < 2 < 3
t3 = 45 != 45
t4 = ‘name’ == ‘name’
t5 = ‘M’ in ‘Magic’
t6 = ‘M’ not in ‘Magic’
t7 = ‘number’ == 12
t8 = ‘number’ != 12
print(t1,t2,t3,t4,t5,t6,t7,t8)
******
# 逻辑控制与循环 比较运算(字符串,浮点,整数,布尔类型,…)
# 比较运算符(comparison Operators) ‘==’ ;’!= ‘; ‘>’ ; ‘<‘ ; ‘<=’ ; ‘>=’
middle = 5
t1 = 1 < middle < 10 # 多条件的比较
two = 1 + 1
three = 1 + 2
t2 = two < three # 变量的比较
t3 = ‘Eddie Van Helen’ == ‘eddie van helen’ # 字符串的比较
t4 = abs(-10) > len(‘length of this word’) # 两个函数的结果比较 (等价于 10 > 19)
print(t1, t2, t3, t4)
# **************************************************************************************
# 比较运算的一些小问题
# t5 = 42 > ‘the answer’ #无法比较. 不同类型的对象不能使用”<,>,<=,>=”进行比较
t6 = 42 == ‘the answer’ # False
t7 = 42 != ‘the answer’ # True
t8 = 5.0 == 5 # True. 浮点和整数虽是不同类型,但是不影响到比较运算
t9 = 3.0 > 1 # True. 浮点和整数虽是不同类型,但是不影响到比较运算
t10 = True > False # 布尔类型比较. 该段代码类似于 1>0
t11 = True + False > False + False # 布尔类型比较. 该段代码类似于 1+0 > 0+0
# t12 = 1<>3 # 无法编译成功,但这种书面表达方式与 1!=3是等价的
print(t6, t7, t8, t9, t10, t11)
******
# 逻辑控制与循环 成员运算符与身份运算符(Membership & Identify Operators)
# 集合类型 — 列表(List) (实用的数据类型结构)
album = [‘Black star’, ‘David Bowie’, 25, True] # 创建列表并放入字符串,整数,布尔类型等元素
album.append(‘new song’) # 在已创建的列表中增添新元素,新添的元素会自动排列在列表尾部
print(album[0],album[-1])
******
# 逻辑控制与循环 成员运算符与身份运算符(Membership & Identify Operators)
# 成员运算符与身份运算符关键词: in, not in (表示归属关系的布尔运算符)
album = [‘Black star’, ‘David Bowie’, 25, True] # 创建列表并放入字符串,整数,布尔类型等元素
album.append(‘new song’) # 在已创建的列表中增添新元素,新添的元素会自动排列在列表尾部
t1 = ‘Black star’ in album # 用in测试字符串’black start’是否在列表album中,存在则显True,否则显False
t2 = ‘Black start’ in album # 类似t1
t3 = str(‘Black start’ in album) # 把结果转换为字符串赋值给t2,方便下面换行打印结果
t4 = ‘Black star’ not in album
print(t1,t2) # 并列打印t1,t2
print(t1,’\n’+t3) # 换行打印t1,t3. ‘\n’+t3中不加+号会出现打印多出一个空格的问题
print(t4)
******
# 逻辑控制与循环 成员运算符与身份运算符(Membership & Identify Operators)
# 成员运算符与身份运算符关键词: is, is not (表示身份鉴别的布尔运算符,is操作符用来进行身份的对比)
the_Eddie = ‘Eddie’
name = ‘Eddie’
t1 = the_Eddie == name
t2 = the_Eddie is name
print(t1, t2)
******
# 逻辑控制与循环 成员运算符与身份运算符(Membership & Identify Operators)
# Python中任何对象都可判断其布尔值,除0,None 和所有空的序列与集合(列表,字典,集合)布尔值为False外,其它都为True.
print(bool(0))
print(bool([]))
print(bool(”))
print(bool(False))
print(bool(None))
a_thing = None # 当你设想一个变量,但没想好它应该等于什么值时,可以将其设为None.
print(a_thing)
******
# 逻辑控制与循环 成员运算符与身份运算符(Membership & Identify Operators)
# 布尔运算符(Boolean Operators): ‘not x’ , ‘x and y’ , ‘x or y’
# and,or 用于布尔值的之间运算
print(1 < 3 and 2 < 5)
print(1 < 3 and 2 > 5)
print(1 < 3 or 2 < 5)
print(1 > 3 or 2 > 5)
******