python基础之逻辑运算符
一 算术运算符
print(10 + 3.1) print(10 + 3) print(10 / 3) # 结果带小数 print(10 // 3) # 只保留整数部分 print(10 % 3) # 取模、取余数 print(10 ** 3) # 取模、取余数
二 比较运算符:>、>=、<、<=、==、!=
print(10 > 3) print(10 == 10) print(10 >= 10) print(10 >= 3) name=input('your name: ') print(name == 'cmx')
三 赋值运算
变量赋值:=
增量赋值:+= 或者 -=
# age = 18 # # age += 1 # age=age + 1 # # print(age) # # age*=3 # age/=3 # age%=3 # age**=3 # age=age**3
链式赋值
# x=10 # y=x # z=y # z = y = x = 10 # 链式赋值 # print(x, y, z) # print(id(x), id(y), id(z))
交叉赋值
m=10 n=20 # print(m,n) # 交换值 # temp=m # m=n # n=temp # print(m,n) # m,n=n,m # 交叉赋值 # print(m,n)
解压赋值
salaries=[111,222,333,444,555] # 把五个月的工资取出来分别赋值给不同的变量名 # mon0=salaries[0] # mon1=salaries[1] # mon2=salaries[2] # mon3=salaries[3] # mon4=salaries[4] # 解压赋值 # mon0,mon1,mon2,mon3,mon4=salaries # print(mon0) # print(mon1) # print(mon2) # print(mon3) # print(mon4)
# 引入*,可以帮助我们取两头的值,无法取中间的值 # 取前三个值 # x,y,z,*_=salaries=[111,222,333,444,555] # *会将没有对应关系的值存成列表然后赋值给紧跟其后的那个变量名,此处为_ # print(x,y,z) # print(_) # 取后三个值 # *_,x,y,z=salaries=[111,222,333,444,555] # print(x,y,z) # x,*_,y,z=salaries=[111,222,333,444,555] # print(x,y,z) # salaries=[111,222,333,444,555] # _,*middle,_=salaries # print(middle)
四 逻辑运算符
4.1 not ,and ,or 的基本使用
# not:就是把紧跟其后的那个条件结果取反 # ps:not与紧跟其后的那个条件是一个不可分割的整体 # print(not 16 > 13) # print(not True) # print(not False) # print(not 10) # print(not 0) # print(not None) # print(not '') # # and:逻辑与,and用来链接左右两个条件,两个条件同时为True,最终结果才为真 # print(True and 10 > 3) # # print(True and 10 > 3 and 10 and 0) # 条件全为真,最终结果才为True # print( 10 > 3 and 10 and 0 and 1 > 3 and 4 == 4 and 3 != 3) # 偷懒原则 # # or:逻辑或,or用来链接左右两个条件,两个条件但凡有一个为True,最终结果就为True, # 两个条件都为False的情况下,最终结果才为False # print(3 > 2 or 0) # print(3 > 4 or False or 3 != 2 or 3 > 2 or True) # 偷懒原则
4.2 优先级:not>and > or
# ps: # 如果单独就只是一串and链接,或者说单独就只是一串or链接,按照从左到右的顺讯依次运算即可(偷懒原则) # 如果是混用,则需要考虑优先级了 # res=3>4 and not 4>3 or 1==3 and 'x' == 'x' or 3 >3 # print(res) # # # False False False # res=(3>4 and (not 4>3)) or (1==3 and 'x' == 'x') or 3 >3 # print(res) res=3>4 and ((not 4>3) or 1==3) and ('x' == 'x' or 3 >3) print(res)
五 成员运算符
in 和 not in
print("egon" in "hello egon") # 判断一个字符串是否存在于一个大字符串中 print("e" in "hello egon") # 判断一个字符串是否存在于一个大字符串中 print(111 in [111,222,33]) # 判断元素是否存在于列表 # 判断key是否存在于字典 print(111 in {"k1":111,'k2':222}) print("k1" in {"k1":111,'k2':222})
not in
print("egon" not in "hello egon") # 推荐使用 print(not "egon" in "hello egon") # 逻辑同上,但语义不明确,不推荐
is 身份运算符,判断id是否相等。

浙公网安备 33010602011771号