作业
现在有a b c三个变量,三个变量中分别保存有三个数值,请通过条件运 算符获取三个值中的最⼤值
a, b, c = 33, 555, 111
print("a是最大值 =", a) if a > b and a > c else print("a不是最大值")
#a不是最大值
print("b是最大值 =", b) if b > a and b > c else print("b不是最大值")
#b是最大值 = 555
print("c是最大值 =", c) if c > a and c > b else print("c不是最大值")
#c不是最大值
## 1,运算符
1,1 运算符的概念
~ 运算符用于执行程序的代码运算,会针对一个以上的操作项目来进行运算。例如:2+3 ,其操作数是2和3,而运算符则是“+”
1.2 运算符的分类
• 算术运算符
• 赋值运算符
• 比较运算符(关系运算符)
• 逻辑运算符
• 条件运算符(三元运算符)
2. 算术运算符(具体格式如下)
• 加法运算符 表现形式 +
• 减法运算符 表现形式 -
• 乘法运算符 表现形式 *
• 除法运算符 表现形式 /
• // 整除,只会保留计算后的整数位,总会返回一个整型
• % 取模,求两个数相除的余数
• 幂运算,求一个值的几次幂
··············································································
3. 赋值运算符(格式如下)
复制运算符的特殊写法 x = x + 3 其实是和 x += 3 是一样的
• += (x+= 3 相当于 x = x + 3 )
• -= (x -= 3 相当于 x= x - 3 )
• = (x = 3 相当于 x = x 3 )
• = (x = 3 相当于 x = x ** 3 )
• /= (x /= 3 相当于 x = x/ 3 )
• //= (x //= 3 相当于 x = x // 3 )
• %= (x %= 3 相当于 x= x % 3 )**
··············································································
4. 比较运算符
• 比较运算符用来比较两个值之间的关系,总会返回一个布尔值.如果关系成立,返回True,否则返回False
• > 比较左侧值是否大于右侧值
• >= 比较左侧的值是否大于或等于右侧的值
• < 比较左侧值是否小于右侧值
• <= 比较左侧的值是否小于或等于右侧的值
··············································································
5. • 特殊的比较方式
• == 比较两个对象的值是否相等 #一样输出的是true 否则false
• != 比较两个对象的值是否不相等
··············································································
• is 比较两个对象是否是同一个对象,比较的是对象的id
• is not 比较两个对象是否不是同一个对象,比较的是对象的id
··············································································
**5. 逻辑运算符
5.1 not 逻辑非
• not可以对符号右侧的值进行非运算对于布尔值,非运算会对其进行取反操作,True变False,False变True 像 0 空值 none,,这些表示空性的值转换为False外,其他的值都是True
··············································································
5.2 and 逻辑与
• and可以对符号两侧的值进行与运算。 只有在符号两侧的值都为True时,才会返回True,只要有一个False就返回False
• 与运算是找False的,如果第一个值为False,则不再看第二个值
··············································································
5.3 or 逻辑或
• 或运算两个值中只要有一个True,就会返回True
• 或运算是找True的
··············································································
5.4 非布尔值的与或运算
• 当我们对非布尔值进行与或运算时,Python会将其当做布尔值运算,最终会返回原值
• 非布尔值与运算的规则
• 与运算是找False的,如果第一个值是False,则不看第二个值。如果第一个值是False,则直接返回第一个值,否则返回第二个值
• 非布尔值或运算的规则
• 或运算是找True的,如果第一个值是True,则不看第二个值。如果第一个值是True,则直接返回第一个值,否则返回第二个值**
逻辑与运算 and
b= false and true #( 与 运算 如果a和b都为真,则结果为真,如果a和b中有一
#( 个条件为假,则结果为假。)
print(b) #返回的是false
b = 0 and 1 #( 与 运算,0 是 false, 1 是 true,与运算返回是假,值他本身
print(b) #返回的是false 就是0
b = 1 and 2 #( 与 运算,1 是 true, 2 是 true,与运算返回的是第二个true,值他本身
print(b) 返回的是2
逻辑或运算 or
b = False or True #或运算同假为假 一真为真,输出的是True
print(b)
b = 2 or 3 #或运算同假为假 一真为真,输出是第一个的值
print(b)
b = 0 or 1 #或运算同假为假 一真为真,输出是第二个的值
print(b)
b = 0 or 0 #或运算同假为假 一真为真,输出是第一个的值
print(b)
print("情人节玩的开心") if True: else(此处True后面的冒号表达的是 if条件控制语句)不能有冒号
print("情人节玩的开心") if True else print(上老师的课很开心) #返回的是第一个值,(情人节玩的开心)(没有冒号就是条件表达式)
a = 200
b = 300
m = a if a > b else b
print(m)
优先级
a = 2 or 3 and 4
当or优先级高的时候,从左到右,返回的是4,当and的优先级高的时候返回的是2