zoukankan      html  css  js  c++  java
  • day4:运算符

     

    1.算术运算符:+ - * / // % **

    注意点:1./ 除法,结果为小数  2.// 地板除,返回整数  3.如果被除数或者除数是一个小数,结果加上.0

    2.比较运算符:< > <= >= == !=

    注意点:1.只会产生两种结果:True和False 2.>=,<= 两个值相等,返回值也为True

    3.赋值运算符:= += -= *= /= //= %= **= 

    注意点:1.= 是赋值,从右向左,将右侧的值赋值给左侧变量

                2.a+=b---->a=a+b

    4.成员运算符:in 和 not in (针对于容器型数据)

    注意点:1.字符串必须是一个连续的片段

                2.列表元组字典正常判断即可

                3.在字典中,in和not in在字典中只判断键,不判断值

    5.身份运算符:is 和 is not

    注意点:1.身份运算符的作用是检测两个数据在内存当中是否是同一个值           

                2.判断是否同一个值请看上篇文章:判断id是否相同的部分。

    6.逻辑运算符:and or not

    注意点:1.逻辑与:全真则真,一假则假

                2.逻辑或:全假则假,一真则真

                3.逻辑非:真变假,假变真

                4.逻辑短路: 如果出现了短路效果,后面的代码不执行

          短路条件:(1) True or 表达式 (2) False and 表达式

        5.逻辑运算符的优先级:() > not > and > or

    7.位运算符:  & |  ^ << >> ~

    1.按位与 & 

    2按位或 |  

    3.按位异或 ^ (两个值不一样,返回真,否则返回假)

    4.<< 左移 :左移相当于做乘法 : a * 2的n次幂

      >> 右移 :右移相当于做除法 : a // 2的n次幂

    5.~ 按位非 (针对于补码进行操作,按位取反,包括符号位)

    举个例子:

    ~ 按位非每一位都取反,包括符号位,求反码每一位除了符号位,都取反.

    var1 = ~19
    print(var1)

    原码:0000 ... 10011
    反码:0000 ... 10011
    补码:0000 ... 10011

    补码: 0000 ... 10011
    按位非: 1111 ... 01100

    给你补码求原码:
    补码: 1111 ... 01100
    反码: 1000 ... 10011
    原码: 1000 ... 10100 => -20

    var1 = ~(-22)
    print(var1)
    """
    原码: 1000 ... 10011
    反码: 1111 ... 01100
    补码: 1111 ... 01101

    补码: 1111 ... 01101
    按位非: 0000 ... 10010

    给你补码求原码:
    正数 : 补码 = 反码 = 原码

    原码: 0000 ... 10010 => 18

    -------------------------------

    关于运算符的总结:

    (1) 个别运算符:
    优先级最高 ** 幂运算
    优先级最低 = 赋值运算符
    () 括号可以提升运算优先级

    (2) 整体 一元运算符 > 二元运算符
    一元运算符: 同一时间,只操作一个值 - ~
    二元运算符: 同一时间,操作两个值 + - * / ...

    (3) 同一层级
    逻辑: () > not > and > or
    算数: 乘除 > 加减
    位运算符: ( << >> ) > & > ^ > |

    (4) 其他运算符
    算数运算符 > 位运算符 > 比较运算符 > 身份运算符> 成员运算符 > 逻辑运算符
    赋值运算符是最后算完进行赋值,做收尾工作的.

  • 相关阅读:
    HDU 4685
    HDU 2519 新生晚会(组合问题)
    HDU 1241 Oil Deposits(递归,搜索)
    数据结构之线性表
    coocs项目的创建
    cocos开发环境搭建
    数据结构之算法时间复杂度
    c++ auto类型说明符
    HDU 6170 Two strings(DP)
    HDU 6138 Fleet of the Eternal Throne(AC自动机)
  • 原文地址:https://www.cnblogs.com/liya1014/p/13268933.html
Copyright © 2011-2022 走看看