zoukankan      html  css  js  c++  java
  • (转)Python 运算符

    原文:https://blog.csdn.net/liang19890820/article/details/69690954

    简述

    在 Python 中,运算符是执行算术或逻辑运算的特殊符号,操作的值被称为操作数。例如:

    >>> 5 + 6
    11
    • 1
    • 2

    这里,+ 是执行加法的运算符,5 和 6 是操作数,11 是操作的输出。

    版权声明:一去、二三里,未经博主允许不得转载。

    运算符种类

    在 Python 中,支持以下类型的运算符:

    • 算术运算符
    • 比较(关系)运算符
    • 逻辑(布尔)运算符
    • 位运算符
    • 赋值运算符
    • 特殊运算符 
      • 成员运算符
      • 身份运算符

    算术运算符

    算术运算符用于执行加、减、乘、除等数学运算。

    运算符含义示例
    + 加 - 两个操作数相加,或者一元加 x + y
    - 减 - 两个操作数相减,或者一元减 x - y
    * 乘 - 两个操作数相乘,或是返回一个被重复若干次的字符串 x * y
    / 除 - 两个操作数相除(总是浮点数) x / y
    % 取模 - 返回除法(/)的余数 x % y(x/y 的余数)
    // 取整除 - 返回商的整数部分 x // y
    ** 幂 - 返回 x 的 y 次幂 x ** y

    示例:

    >>> x = 8
    >>> y = 3
    >>> 
    >>> x + y
    11
    >>> 
    >>> x - y
    5
    >>> 
    >>> x * y
    24
    >>> 
    >>> x / y  # 总是浮点数
    2.6666666666666665
    >>> 
    >>> x // y
    2
    >>> 
    >>> x ** y
    512
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    注意: 除法 / 运算的结果总是浮点数。例如:4 / 2 返回的是 2.0,而不是 2。

    比较运算符

    比较运算符又称关系运算符,用于比较值,根据条件返回 True 或 False。

    运算符含义示例
    > 大于 - 如果左操作数大于右操作数,则为 True x > y
    < 小于 - 如果左操作数小于右操作数,则为 True x < y
    == 等于 - 如果两个操作数相等,则为 True x == y
    != 不等于 - 如果两个操作数不相等,则为 True x != y
    >= 大于等于 - 如果左操作数大于或等于右操作数,则为 True x >= y
    <= 小于等于 - 如果左操作数小于或等于右操作数,则为 True x <= y

    示例:

    >>> x = 6
    >>> y = 10
    >>> 
    >>> x > y
    False
    >>> 
    >>> x < y
    True
    >>> 
    >>> x == y
    False
    >>> 
    >>> x != y
    True
    >>> 
    >>> x >= y
    False
    >>> 
    >>> x <= y
    True
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    逻辑运算符

    逻辑运算符又称布尔运算符,通常用于测试真假值。

    运算符含义示例
    and 逻辑与 - 如果两个操作数都为 True,则为 True x and y
    or 逻辑或 - 如果任一操作数为 True,则为 True x or y
    not 逻辑非 - 如果操作数为 False,则为 True(补数) not x

    示例:

    >>> x = True
    >>> y = False
    >>> 
    >>> x and y
    False
    >>> 
    >>> x or y
    True
    >>> 
    >>> not x
    False
    >>> 
    >>> not y
    True
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    位运算符

    位运算符作用于操作数,就像它们是二进制数字的字符串一样,它一点点地运行,因此而得名。

    运算符含义示例
    & 按位与(AND) x & y
    | 按位或(OR) x | y
    ~ 按位翻转/取反(NOT) ~x
    ^ 按位异或(XOR) x ^ y
    >> 按位右移 x >> 2
    << 按位左移 x << 2

    例如:2 是二进制 10,7 是 111。

    令 x = 10(二进制 0000 1010),y = 4(二进制 0000 0100),进行位运算:

    >>> x = 10  # 二进制 0000 1010
    >>> y = 4  # 二进制 0000 0100
    >>> 
    >>> x & y  # 0000 0000
    0  
    >>> 
    >>> x | y  # 0000 1110
    14  
    >>> 
    >>> ~x  # 1111 0101
    -11  
    >>> 
    >>> x ^ y  # 0000 1110
    14  
    >>> 
    >>> x >> 2  # 0000 0010
    2  
    >>> 
    >>> x << 2  # 0010 1000
    40  
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    赋值运算符

    赋值运算符用于为变量赋值。

    例如:x = 5,是一个简单的赋值运算符,它将右侧的值 5 分配给左侧的变量 x。

    在 Python 中,有各种各样的复合运算符,例如:x += 5,先将变量 x 的值与 5 相加,再将最终结果分配给变量 x,等价于:x = x + 5

    运算符示例等价于
    = x = 5 x = 5(相同)
    += x += 5 x = x + 5
    -= x -= 5 x = x - 5
    *= x *= 5 x = x * 5
    /= x /= 5 x = x / 5
    %= x %= 5 x = x % 5
    //= x //= 5 x = x // 5
    **= x **= 5 x = x ** 5
    &= x &= 5 x = x & 5
    |= x |= 5 x = x | 5
    ^= x ^= 5 x = x ^ 5
    >>= x >>= 5 x = x >> 5
    <<= x <<= 5 x = x << 5

    特殊运算符

    除以上运算符外,Python 还提供了一些特殊类型的运算符:

    • 身份运算符
    • 成员运算符

    身份运算符

    身份运算符用于检查两个值(或变量)是否位于存储器的同一部分。

    注意: 两个变量相等,并不意味着它们也相同。

    运算符含义示例
    is 如果操作数相同,则为 True(引用同一个对象) x is True
    is not 如果操作数不相同,则为 True(引用不同的对象) x is not True

    示例:

    >>> x1 = 5
    >>> y1 = 5
    >>> 
    >>> x2 = 'Python'
    >>> y2 = 'Python'
    >>> 
    >>> x3 = [1, 2, 3]
    >>> y3 = [1, 2, 3]
    >>> 
    >>> x1 is not y1
    False
    >>> 
    >>> x2 is y2
    True
    >>> 
    >>> x3 is y3
    False
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    可以看到 x1 和 y1 是相同值的整数,所以它们相等且相同。x2 和 y2(字符串)同样是这样。

    但 x3 和 y3 是列表,它们相等,但不相同。由于列表是可变的(可以更改),即使它们相等,解释器也会将它们分别存储在内存中。

    成员运算符

    成员运算符用于测试在序列(字符串、列表、元组、集合和字典)中是否可以找到一个值/变量。

    注意: 在字典中,只能检测 key 是否存在,而不能检测 value。

    运算符含义示例
    in 如果在序列中找到值/变量,则为 True 5 in x
    not in 如果在序列中没有找到值/变量,则为 True 5 not in x

    示例:

    >>> x = 'Hello, World!'  # 字符串
    >>> y = {1:'Java', 2:'Python'}  # 字典
    >>> 
    >>> 'H' in x
    True
    >>> 
    >>> 'hello' not in x
    True
    >>> 
    >>> 1 in y
    True
    >>> 
    >>> 'Python' in y
    False
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    这里,'H' 在 x 中,但 'hello' 不存在于 x 中(切记,Python 是区分大小写的)。同样地,1 是 key,'Python' 是字典 y 中的值。因此,'Python' in y 返回 False。

  • 相关阅读:
    【css系列】创建网页加载进度条
    【大数据系列】apache hive 官方文档翻译
    【大数据系列】问题汇总
    【大数据系列】hive修改默认的derby数据库
    【大数据系列】hive安装及启动
    【大数据系列】MapReduce详解
    【大数据系列】基于MapReduce的数据处理 SequenceFile序列化文件
    【大数据系列】windows下连接Linux环境开发
    【大数据系列】常用命令
    【大数据系列】hadoop脚本分析
  • 原文地址:https://www.cnblogs.com/liujiacai/p/9428211.html
Copyright © 2011-2022 走看看