美文网首页
基本运算符

基本运算符

作者: qianranow | 来源:发表于2018-03-27 09:20 被阅读36次

    0. 算术运算符


    • 加法:+
      num = 3 + 5
      print(num)
      
    • 减法:-
      num = 8 - 2
      print(num)
      
    • 乘法:*
      num = 20 * 5
      print(num)
      
    • 求幂:**
      num = 2 ** 3
      print(num)
      
    • 除法:/
      num = 10 / 4
      print(num)
      
    • 整除://
      num = 5.2 // 2
      print(num)
      
    • 取模:%
      num = 10 % 4
      print(num)
      
    • 整除求模 的应用场景
      # 九宫格 行索引 列索引
      num = 6
      row = num // 4
      col = num % 4
      
    • 注意
      • 不要除以 0
      • () 具有 最高 优先级

    1. 赋值运算符


    • 简单:=,将等号 右边 的值赋值给等号 左边 的变量
      # 1. 在内存中开辟一块内存空间
      # 2. 将 100 存入该内存空间
      # 3. 返回该内存空间唯一标识
      num = 100
      
    • 复合:+=-=*=**=/=//=%=,先进行 算术运算 再进行 赋值操作

    2. 比较运算符


    • 大于:>
      compare = 8 > 6
      print(compare)
      
    • 小于:<
      compare = 50 < 100
      print(compare)
      
    • 大于或者等于:>=
      compare = 66 >= 66
      print(compare)
      
    • 小于或者等于:<=
      compare = 88 <= 88
      print(compare)
      
    • 等于:==
      compare = 100 == 100
      print(compare)
      
    • 不等于:!=
      compare = 66 != 88
      print(compare)
      
    • is:比对唯一标识
      a = 10
      b = 10
      print(id(a), id(b))
      print(a is b)
      
      c = [1]
      d = [1]
      print(id(c), id(d))
      print(c is d)
      
    • 注意
      • 链状比较运算符:10 < a <= 66
      • 内部性能优化
        # 整数对象缓存
        1. 将在 "[-5, 256]" 之间的 "小整数对象" 放在 "small_ints" 中
        2. 在用这些 "小整数" 时,就从 "small_ints" 中取,不再去 "临时创建" 新的对象
        
        # 直接引用
        1. 整数
           1) 在一个 代码块 中创建的整数对象
           2) 如果在 该代码块中 存在 一个值 与 其相同的 对象
           3) 那么就 直接引用,不再创建 新的 整数对象 
        
        2. 不可变对象
           1) 在 同一个 代码块中的对象
           2) 只要是 值相同 的对象,就不会重复创建
           3) 而是 直接引用 已经存在 的对象
        

    3. 逻辑运算符


    • 与:and
      • 一假则假
    • 或:or
      • 一真则真
    • 非:not
      • 真变假假变真
    • 注意
      • intfloat 类型进行算术运算时,结果会被提升为 float 类型
      • bool 类型的值,如果作为真假来判定,一般是 非零即真非空即真
        print(False or 3)
        print(bool(0))
        print(bool(""))
        print(bool(1))
        
      • 整个逻辑表达式的结果不一定只是 TrueFalse
        print(0 and True)
        print(1 and 3)
        print(1 or 3)
        print(0 or 3)
        print(0 or False)
        print(0 or False or 6)
        

    相关文章

      网友评论

          本文标题:基本运算符

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