zoukankan      html  css  js  c++  java
  • 05 Python运算符

    Python运算符:

    此图来源于菜鸟教程,更详细参考

    http://www.runoob.com/python3/python3-basic-operators.html

     

    说明:

    同一优先级的通常从左至右计算(赋值运算符是右至左)

    如果想要改变它们的计算顺序,得使用圆括号

    **:幂运算,可进行开方运算

    ~:按位非(取反)

    一个简单的公式: – (a + 1)

    原理:① 将a = 5,用原码表示:00000101

                   在计算机中,数值的存储一律用补码,正数的原码就是补码

              ② 取反操作~,0变1,1变0,为:11111010

                   取反后,为负数的存储形式,最高位为1,补码(负数要想存储在内存中,要经过取反,加1的操作,最后成为补码)

              ③ 减1,为:11111001

                  进行相反操作,减1

             ④ 取反,为:10000110

                  符号位不用变

             ⑤ 输出,为:-6

          ① 将a = -6,用原码表示:100000110

          ② 取反,为:11111001,反码

          ③ 加1,为:11111010,补码

             -6内存中的存储形式

          ④ 取反操作~,为:00000101

             取反后,已经是一个正数的存储形式,正数的补码与原码一样,所以无须进行减一和取反。

          ⑤ 输出,为:5

    算术运算符:

      *、/、//、%、+、-、

      Note

        floor除法,x // y

        整除(返回一个不大于x / y的值(向下圆整)),有一个为float,结果为float

              求模运算符 x % y,最后结果的符号与y有关,有一个为float,结果为float

      

     <<>>: 左移,最高位不变,每移一位,结果为,原值 * 2 ** n (n为移动的位数)

                     右移,最高位不变,每移一位,结果为,原值 / 2 ** n (n为移动的位数)

    &:都为1即为1,否则为0

    ^:相同即为1,否则为0

    |:有一个为1即为1,否则为0

    比较运算符

      >、>=、<、<=、==、!=

      Note:Python2,!=和<>都可以用;

      Python3,只用!=

     

    身份运算符:

      isis not

      意思:判断两个标识符是否引用的同一个对象,返回True和False

                 实际上就是判断他们的id,id(a) == id(b)

    成员运算符:

      innot in

      意思:判断指定成员是否在序列中,返回True和False

      in,  x in iterable意思为:如果x在iterable里面,就返回True,否则,返回False

      not in,  x not in iterable意思为:如果x不在iterable里面,就返回True,否则,返回False

    逻辑运算符:

      notandor

      not,and,or同时出现,先算(),再not,再and,再or

      not,真即假,假即真;

      and,都为真即真;

      or,有一个为真即真

      Noteand和or,返回的是真或假的表达式

      

  • 相关阅读:
    POJ-1189 钉子和小球(动态规划)
    POJ-1191-棋盘分割(动态规划)
    Java实现 LeetCode 730 统计不同回文子字符串(动态规划)
    Java实现 LeetCode 730 统计不同回文子字符串(动态规划)
    Java实现 LeetCode 729 我的日程安排表 I(二叉树)
    Java实现 LeetCode 729 我的日程安排表 I(二叉树)
    Java实现 LeetCode 729 我的日程安排表 I(二叉树)
    Java实现 LeetCode 728 自除数(暴力)
    Java实现 LeetCode 728 自除数(暴力)
    Java实现 LeetCode 728 自除数(暴力)
  • 原文地址:https://www.cnblogs.com/hardy9sap/p/10602679.html
Copyright © 2011-2022 走看看