zoukankan      html  css  js  c++  java
  • 运算符---赵胜---2019-12-30

    运算符 说明 实例 结果

    • 加 12.45 + 15 27.45
    • 减 4.56 - 0.26 4.3
    • 乘 5 * 3.6 18.0
      / 除 7 / 2 3.5
      % 取余,即返回除法的余数 7 % 2 1
      // 整除,返回商的整数部分 7 // 2 3
      ** 幂,即返回 x 的 y 次方 2 ** 4 16,即 24

    1.+加法运算符
    可以数字相加,也可以字符串连接运算

    2.- 减法运算符
    “-”除了可以作为减法运算符之外,还可以作为求负的运算符
    但单目运算符“+”则不对操作数做任何改变

    3.*乘法运算符
    除了可以数字相乘,此外,“*”还可以作为字符串(包括后续要介绍的序列)的连接运算符,表示将 N 个字符串连接起来

    4./ 和 // 除法运算符
    Python 的除法运算符有两个:“/”表示普通除法,使用它除出来的结果与平常数学计算的结果是相同的(即除不尽时,会产生小数部分);而“//”表示整除,使用它除出来的结果只有整数部分,小数部分将会被舍弃。
    对于 Python 2.x 而言,它只提供了一个“/”运算符,该运算符是 Python 3.x 中“/”和“//”的综合版。对于 Python 2.x 中的“/”而言,它既是整除运算符,也是非整除运算符。规则如下:
    当两个操作数都是整数时,Python 2.x 中的“/”就是整除运算符。
    当两个操作数有一个是浮点数(或两个都是浮点数)时,Python 2.x 中的“/”就是非整除运算符。

    5.% 求余运算符
    Python 不要求求余运算符的两个操作数都是整数,Python 的求余运算符完全支持对浮点数求余。求余运算的结果不一定总是整数,它是使用第一个操作数来除以第二个操作数,得到一个整除的结果后剩下的值就是余数。

    6.** 乘方运算符
    Python 支持使用“”作为乘方运算符,这是一个使用非常方便的运算符。由于开方其实是乘方的逆运算,因此实际上使用“”也可进行开方运算

    = 基本赋值运算符
    Python 使用“=”作为赋值运算符,常用于将表达式的值赋给另一个变量,例如如下代码:

    为变量st赋值为Python

    st = "Python"

    为变量pi赋值为3.14

    pi = 3.14

    为变量visited赋值为True

    visited = True
    此之外,也可使用赋值运算将一个变量的值赋给另一个变量。例如,如下代码也是正确的:

    将变量st的值赋给st2

    st2 = st
    print(st2)
    值得指出的是,Python 的赋值表达式是有值的,赋值表达式的值就是被赋的值,因此 Python 支持连续赋值。例如,如下代码也是正确的
    a = b = c = 20
    上面程序将 c=20。这个表达式的值赋给变量 b,由于赋值表达式本身也有值,就是被赋的值,因此 c=20 这个表达式的值就是 20,故 b 也被赋值为 20;依此类推,变量 a 也被赋值为 20
    赋值运算符还可用于将表达式的值赋给变量。例如,如下代码也是正确的:
    d1 = 12.34

    将表达式的值赋给d2

    d2 = d1 + 5

    输出d2的值

    print("d2的值为:%g" % d2 ) # 17.34

    扩展后的赋值运算符
    运算符 说 明 举 例 展开形式
    = 最基本的赋值运算 x = y x = y
    += 加赋值 x += y x = x + y
    -= 减赋值 x -= y x = x - y
    *= 乘赋值 x *= y x = x * y
    /= 除赋值 x /= y x = x / y
    %= 取余数赋值 x %= y x = x % y
    **= 幂赋值 x **= y x = x ** y
    //= 取整数赋值 x //= y x = x // y
    &= 按位与赋值 x &= y x = x & y
    |= 按位或赋值 x |= y x = x | y
    ^= 按位异或赋值 x ^= y x = x ^ y
    <<= 左移赋值 x <<= y x = x << y,这里的 y 指的是左移的位数

    = 右移赋值 x >>= y x = x >> y,这里的 y 指的是右移的位数

    按位与运算的运算符是 &,它有 2 个操作数,其运算法则是,按位将 2 个操作数对应的二进制数一一对应,只有对应数位都是 1 时,此为对应的结果位才是 1;反之,就是 0。

    按位或运算的运算符是 |,它有 2 个操作数,运算法则是,按位将 2 个操作数对应的二进制数一一对应,只有对应数位都是 0,所得结果才是 0;反之,就是 1

    按位异或运算的运算符是 ^,它有 2 个操作数,运算法则是,按位将 2 个操作数对应的二进制数一一对应,当对应位的二进制值相同(同为 0 或同为 1)时,所得结果为 0;反之,则为 1。

    按位取反,也常称为“按位非”运算,此运算的运算符为 ~,它只有 1 个操作数,其运算法则为:将操作数的所有二进制位,1 改为 0,0 改为 1。

    <<左移运算符 左移运算符是将操作数补码形式的二进制数,整体左移指定位数,左移后,左边溢出的位直接丢弃,右边空出来的位以 0 来填充。

    右移运算符 Python 的右移运算符为 >>,其运行法则是,把操作数补码形式的二进制右移指定位数后,左边空出来的位以符号位来填充,右侧溢出位直接丢弃。

    比较运算符 功能

                大于,如果运算符前面的值大于后面的值,则返回 True;否则返回 False
    

    = 大于或等于,如果运算符前面的值大于或等于后面的值,则返回 True;否则返回 False
    < 小于,如果运算符前面的值小于后面的值,则返回 True;否则返回 False
    <= 小于或等于,如果运算符前面的值小于或等于后面的值,则返回 True;否则返回 False
    == 等于,如果运算符前面的值等于后面的值,则返回 True;否则返回 False
    != 不等于,如果运算符前面的值不等于后面的值,则返回 True;否则返回 False
    is 判断两个变量所引用的对象是否相同,如果相同则返回 True
    is not 判断两个变量所引用的对象是否不相同,如果不相同则返回 True

    比较运算符 == 和 is 的区别
    初学 Python,大家可能对 is 比较陌生,很多人会误将它和 == 的功能混为一谈,但其实 is 与 == 有本质上的区别,完全不是一码事儿
    == 用来比较两个变量的值是否相等,而 is 则用来比对两个变量引用的是否是同一个对象

    逻辑运算符 含义 基本格式 功能
    and 逻辑与(简称“与”) a and b 有 2 个操作数 a 和 b,只有它们都是 True 时,才返回 True,否则返回 False。
    or 逻辑或(简称“或”) a or b 有 2 个操作数 a 和 b ,只有它们都是 False 时,才返回 False,否则返回 True。
    not 逻辑非(简称“非”) not a 只需要 1 个操作数 a,如果 a 的值为 True,则返回 False;反之,如果 a 的值为 False,则返回 True。

    有些时候,程序需要使用多个逻辑运算符来组合复杂的逻辑。例如,假设想表达如下逻辑:需要购买一套必须以“Python”结尾的教程,且教程价格小于 50 元或该教程是基于“正式版”的。假如使用如下程序:
    bookName = "C语言中文网Python"
    price = 99
    version = "正式版"
    if bookName.endswith('Python') and (price < 50 or version == "正式版") :
    print("打算购买这套Python教程")
    else:
    print("不购买!")

    运算符的优先级
    运算符说明 Python运算符 优先级
    小括号 () 20
    索引运算符 x[index] 或 x[index:index2[:index3]] 18、19
    属性访问 x.attrbute 17
    乘方 ** 16
    按位取反 ~ 15
    符号运算符 +(正号)或 -(负号) 14
    乘、除 *、/、//、% 13
    加、减 +、- 12
    位移 >>、<< 11
    按位与 & 10
    按位异或 ^ 9
    按位或 | 8
    比较运算符 ==、!=、>、>=、<、<= 7
    is 运算符 is、is not 6
    in 运算符 in、not in 5
    逻辑非 not 4
    逻辑与 and 3
    逻辑或 or 2

  • 相关阅读:
    MongoDB compass 连接不上远程服务器的解决方法
    art-template 模版引擎
    mongodb数据库的集合关联
    捕获mongoogse 错误信息
    inux下使用自带mail发送邮件告警
    rinted端口转发工具
    windows安装PHP IIS MYSQL
    sql语句查询知识点
    maven加速镜像
    docker启动容器关于防火墙报错
  • 原文地址:https://www.cnblogs.com/niaocaizhou/p/12118264.html
Copyright © 2011-2022 走看看