【Python基础入门】(6)常用七大运算符的使用

一、算数运算符

  +:加

  -:减

  *:乘

  /:浮点除

    5/2 = 2.5

  //:除法取整

    5//2 = 2

  %:取模(余)

  **:幂

    2**4 = 16

二、比较运算符

  ==:等于

  !=:不等于

  >:大于

  <:小于

  >=:大于等于

  <=:小于等于

三、逻辑运算符

  not:非

  and:与

  or:或

  优先级:not > and > or

四、赋值运算符

  =:赋值

  +=:加法赋值

  -=:减法赋值

  *=:乘法赋值

  /=:浮点除法赋值

  //=:整除赋值

  %=:取模赋值

  **=:幂赋值

五、成员运算符

  in:在指定序列中找到值返回True,反之返回False

  not in:在指定序列中找不到值返回False,反之返回True

# 成员运算符
sheet = ["张三","李四","王五"]
if "张三" in sheet:
    print("张三在听课")
else:
    print("张三旷课了")

# 输出:张三在听课

六、身份运算符

  is:判断两个变量是否引至一个对象(同一内存地址)

  is not:判断两个变量是否引至不同对象

# 身份运算符
a = 5
b = a
c = 5.0
print(b is a) #True
print(a is b) #True
print(a == c) #True
print(a is c) #False
d = 5
print(a is d) #True

七、位运算符(重要!!平时不怎么用,但是面试时会问)

  &:按位与运算符

    0&0 = 0
        0&1 = 0
        1&0 = 0
        1&1 = 1

  |:按位或运算符

    0|0 = 0
        0|1 = 1
        1|0 = 1
        1|1 = 1

  ^:按位异或运算符

    0^0 = 0
        0^1 = 1
        1^0 = 1
        1^1 = 0

  ~:按位取反运算符

    ~1 = 0
        ~0 = 1

  <<:左移动运算符

    左移若干位,右补0

  >>:右异动运算符

    右移若干位,左补0

# 位运算符
a = 60 # 60的二进制:00111100
b = 13 # 13的二进制:00001101
c = 0

# 按位与(除了1&1 = 1,其余都为0):00001100 = 2^3+2^2 = 12
c = a & b
print("a & b = ",c)

# 按位或(除了0|0 = 0,其余都为1):00111101 = 2^5+2^4+2^3+2^2+2^0 = 61
c = a | b
print("a | b = ",c)

# 按位异或(相同返回0,不同返回1):00110001 = 2^5+2^4+2^0 = 49
c = a ^ b
print("a ^ b = ",c)

# 按位取反(~1 = 0,~0 = 1):11000011 = 2^7+2^6+2^1+2^0 = 195
# 数字原来为正数,取反后加1变为负数:-(~11000011+1) = -61
# 以此类推:~ b = -14
c = ~ a
print("~ a = ",c)

# 左移:右补0
# 原始:00111100
# 00111100000 = 480
c = a << 3
print("a << 3 = ",c)

# 右移:左补0,删除最右边相同位数的数,左边添"000",右边删除"100"
# 原始:00111100
# 00000111 = 7
c = a >> 3
print("a >> 3 = ",c)

猜你喜欢

转载自www.cnblogs.com/ac-chang/p/12606612.html