美文网首页
Python 3 的运算符及优先级

Python 3 的运算符及优先级

作者: NiceBlueChai | 来源:发表于2017-10-23 10:46 被阅读149次

    Python 支持以下7种运算符

    1.算术运算符

    假设变量a=10,变量b=5

    运算符 描述 实例
    + 加:两个对象相加 a+b输出结果为15
    - 减:得到负数或一个数减另一个数 a-b输出结果为5
    * 乘:两个数相乘或返回一个被重复若干次的字符串 a*b输出结果为50
    / 除:x除以y a/b输出结果为2
    % 取余:返回除法的余数 b%a输出结果为0
    ** 幂:返回x的y次幂 a**b为10的5次方,输出结果为100000
    // 取整除(地板除):返回商的整数部分 9//2的输出结果为4,9.0//2.0的输出结果为4.0

    2.比较运算符

    假设变量a为10,变量b为20.

    运算符 描述 实例
    == 等于:比较两个对象是否相等 (a==b)返回False
    != 不等于:比较两个对象是否不相等 (a!=b)返回True
    > 大于:返回x是否大于y (a>b)返回False
    < 小于:返回x是否小于y (a<b)返回True
    >= 大于等于:返回x是否大于等于y (a>=b)返回False
    < 小于:返回x是否小等于y (a<=b)返回True

    3.赋值运算符

    假设变量a为10,变量b为20.

    运算符 描述 实例
    = 简单的赋值运算符 c=a+b,将a+b的运算结果赋值给c
    += 加法赋值运算符 c+=a,等效于c=c+a
    -= 减法赋值运算符 c-=a,等效于c=c-a
    *= 乘法赋值运算符 c *=a,等效于c=c*a
    /= 除法赋值运算符 c/=a,等效于c=c/a
    %= 取模赋值运算符 c%=a,等效于c=c%a
    **= 幂赋值运算符 c**=a,等效于c=c**a
    //= 取整(地板)除赋值运算符 c//=a,等效于c=c//a

    4.位运算符

    设变量a为60,变量b为13

    运算符 描述 实例
    & 按位与运算符:如参与运算的两个值响应为都为1,则该位的结果为1,否则为0. (a&b)的结果为12,二进制解释:0000 1100
    | 按位或运算符:只要对应的二进制位有一个为1,结果就为1 (a|b)的结果为61二进制解释:0011 1101
    ^ 按位异或运算符:当对应的两个二进制位相异时,结果为1 (a^b)的结果为49,二进制解释:0011 0001
    ~ 按位取反运算符:对数据的每个二进制位取反,即把1变成0,把0变成1 (~a)的输出结果为-61,二进制解释:1100 0011,一个有符号二进制数的补码形成
    << 左移运算符:运算数的各二进制位全部左移若干位,由<<右边的数指定移动的位数,高位丢弃,低位补0 a<<2输出结果为240,二进制解释:1111 0000
    >> 右移运算符:运算数的各二进制位全部右移若干位,由>>右边的数指定移动的位数 a>>2输出结果为15,二进制解释:0000 1111

    5.逻辑运算符

    假设变量a为10,变量b为20.

    运算符 逻辑表达式 描述 实例
    and x and y 布尔"与":如果 x 为 False ,x and y 就返回 False ;否则返回 y 的计算值 (a and b) 返回20
    or x or y 布尔"或":如果 x 是非 0 就返回 x 的值;否则返回y的计算值 (a or b)返回 10
    not not x 布尔"非":如果x为Ture,就返回 False,如果x为False,就返回Ture not(a and b)返回False

    6.成员运算符

    运算符 描述 实例
    in 如果在指定的序列中找到值,就返回 Ture;否则 x返回False x 在有、序列中,如果x在y序列中,就返回Ture
    not in 如果在指定的序列中没有找到值,就返回Ture;否则返回false x 不在y序列中,如果x不在y序列中,就返回Ture

    7.身份运算符

    身份运算符用于比较两个对象的储存单元

    运算符 描述 实例
    is is判断两个标识符是否引用自一个对象 x is y ,如果id(x)等于id(y),is返回结果1
    is not is not 用于判断两个标识符是否引用自不同的对象 x is not y,如果id(x)不等于id(y),is not 返回结果1

    运算符优先级

    运算符 描述
    ** 指数(最高优先级)
    ~ + - 按位翻转,一元加号和减号(最后两个的方法名为+@和-@)
    * / % // 乘、除、取模和取整
    + - 加法、减法
    >> << 右移左移运算符
    & 位AND
    ^ 位运算符
    <= >= > < 比较运算符
    <> == != 等于运算符
    = %= /= //= -= += *= **= 赋值运算符
    is is not 身份运算符
    in not in 成员运算符
    not or and 逻辑运算符

    **


    相关文章

      网友评论

          本文标题:Python 3 的运算符及优先级

          本文链接:https://www.haomeiwen.com/subject/pjyguxtx.html