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

    一、运算符

    1.算数运算符

    (1)加(+)

        注意:字符串与整数之间不能进行相加,需要通过str()或int()进行转换数据类型

    • 整数与整数相加

      >>> 1 + 1
      2
      >>>
    • 浮点数与浮点数相加
      >>> 2.0 + 2.0
      4.0
      >>>
      
      """二进制存储精度误差"""
      
      >>> 1.1 + 1.3
      2.4000000000000004
      >>>
    • 整数与浮点数相加
      >>> 2 + 2.0
      4.0
      >>>
    • 字符串之间相加
      >>> "Mr" + "." + "ZHENG"
      'Mr.ZHENG'
      >>>
    • 正数与负数相加
      >>> 3 + (-1)
      2
      >>>
    • 负数与负数相加
      >>> -3 + -4
      -7
      >>>

    (2)减(-)

        注意:字符串与整数和字符串之间不能进行相减

    • 整数与整数相减
      >>> 10 - 5
      5
      >>>
    • 负数与负数相减
      >>> -3 - -4
      1
      >>>
    • 正数与负数相减
      >>> 5 - -2
      7
      >>>
    • 浮点数与浮点数相减
      >>> 5.0 - 2.0
      3.0
      >>>
      >>> 1.3 - 1.2
      0.10000000000000009
      >>>
    • 整数与浮点数相减
      >>> 3 - 1.3
      1.7
      >>>

    (3)乘(*)

        注意:字符串与字符串之间不能进行相乘

    • 整数与整数相乘
      >>> 3 * 2
      6
      >>>
    • 浮点数与浮点数相乘

      >>> 3.0 * 2.0
      6.0
      >>>

    • 整数与浮点数相乘
      >>> 4 * 1.0
      4.0
      >>>
    • 正数与负数相乘
      >>> 5 * (-2)
      -10
      >>>
    • 负数与负数相乘
      >>> -3 * -2
      6
      >>>

    (4)除(/)

        注意:字符串与字符串和整数之间不能进行相除

    • python2.x 整数与整数相除
      >>> 6 / 3
      2
      """整数相除,结果为整数"""
      >>> 7 / 3
      2
      >>>
    • python3.x 整数与整数相除
      >>> 1/2
      """整数相除,结果为浮点数"""
      0.5 
      >>>
    • 浮点数与浮点数相除
      >>> 6.2 / 2.0
      3.1
      >>>
    • 整数与浮点数相除
      >>> 6.0 /3
      2.0
      >>>
      >>> 7 / 3.0
      2.3333333333333335
      >>>

     (5)求幂(**)

        如x ** y  --> 返回x的y次幂

    >>> 3 ** 3
    27
    >>>
    >>> 10 ** 2
    100
    >>>

    (6)取模 (%)--> 返回除法的余数

    >>> 5 % 3
    2
    >>>
    """-a % b = b - (a % b)""" >>> -304 % 100 96 >>>

    (7)整除法(//) -->向左取整

    • 正数(正数向零取整)
      >>> 9.0 // 2
      4.0
      >>> 9 // 2
      4
    • 负数(负数取偏小一位数)
      >>> -9.0 // 2
      -5.0
      >>> -9 // 2
      -5

    2.赋值运算符

     (1)=  简单的赋值运算符

    • 变量的使用和命名
      •   变量名只能包含字母、数字和下划线,可以以字母或下划线打头,但是不能以数字打头
      •   变量不能包含空格
      •   不要以 python 中的关键字(保留字符)作为变量
      •   变量名应简短又具有描述性
      •   变量区分大小写
      •   慎用字母 l 和 o,因为可能会被人认为是 1 和 0
    >>> a = 10
    >>> a
    10
    name = "Alex Li"
    name2 = name
    print(name,name2)
    name = "Jack"
    print("What is the value of name2 now?")
    a,b = 1,2
    print(a)
    print(b)
    
    c,d = [3,4]
    print(c)
    print(d)
    
    ---> 1
    ---> 2
    ---> 3
    ---> 4

      python内存回收机制如下:

    变量相当于门牌号,当门牌没有了,即函数的引用都没有调用了,内存的数据就会被清除掉。
    python内有个定时器,定期的会刷新,如果发现内存中数据不被引用了,就会被回收,这个就是内存的回收机制。

    (2)+=  加法赋值运算符

       a += 1   --> a = a + 1

    >>> a = 2
    >>> a += 1
    >>> a
    3
    >>>

    (3)-=  减法赋值运算符

       a -= 1   --> a = a - 1

    (4)*=  乘法赋值运算符

       a *= 1   --> a = a * 1

    (5)/=  除法赋值运算符

       a /= 2   --> a = a / 2

    (6)%=  取模赋值运算符

       a %= 3  --> a = a % 3

    (7)**=  幂赋值运算符

        c **= a 等效于 c = c ** a

    (8)//=  取整除赋值运算符

       c //= a 等效于 c = c // a

    3.比较运算符(返回值为bool值)

    (1)==  等于 - 比较对象是否相等

    >>> "name" == "name"
    True
    >>> 1 == 1
    True
    >>> 1 == 2
    False
    >>>

    (2)!=或<>  不等于 - 比较两个对象是否不相等

    >>> 1 != 2
    True
    >>> 1 <> 1
    False
    >>> "name" != "name1"
    True
    >>>

    (3)>

    >>> 2 > 1
    True
    >>> 5 > 8
    False
    >>> "zheng" > "zhen"
    True
    >>>

    (4)<

    >>> 1 < 2
    True
    >>> 3 < 2
    False
    >>> "zhen" < "zheng"
    True
    >>>

    (5)>=

    >>> 2 >= 2
    True
    >>>

    (6)<=

    >>> 2 <= 2
    True
    >>>

    4.身份运算符(用于比较两个对象的存储单元--内存地址)

     (1)is   是判断两个标识符是不是引用自一个内存地址

    • x is y,类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
      >>> 1 is 1
      True
      >>> 1 is 2
      False

     (2)is not   是判断两个标识符是不是引用自不同对象

    • x is not y, 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False
      >>> 1 is not 1
      False
      >>> 1 is not 2
      True

    5.逻辑运算符

    假设a = 10,b = 20

     (1)and  布尔"与" --> 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值

    >>> a = 10
    >>> b = 20
    >>> a == 9 and b
    False
    >>> a and b
    20

    (2)or  布尔"或" --> 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值

    >>> a = 10
    >>> b = 20
    >>> a or b
    10
    >>> a == -1 or b
    20
    >>> a == 1 or b
    20
    >>> a == 10 or b
    True

    (3)not  布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True

    >>> a = 10
    >>> not a
    False
    >>> not a == 1
    True

    6.成员运算符

     (1)in  如果在指定的序列中找到值返回 True,否则返回 False

    • 如下:a 在 b序列中则返回True,否则返回False
      >>> a = 10
      >>> b = [1,2,3]
      >>> a in b
      False
      >>> b = [1,2,3,10]
      >>> a in b
      True

     (2)not in  如果在指定的序列中没有找到值返回 True,否则返回 False

    • 如下:a 不在 b序列中则返回True,否则返回False
      >>> a = 10
      >>> b = [1,2,3]
      >>> a not in b
      True
      >>> b = [1,2,3,10]
      >>> a not in b
      False
      >>>

     

  • 相关阅读:
    STL vector的介绍(1)
    linux入门基础——linux软件管理RPM
    Use Local Or Global Index?
    AIX下RAC搭建 Oracle10G(五)安装oracle、建立监听
    HLJU 1220: AC100天 (枚举)
    【JAVA】java中Future、FutureTask的使用
    多线程之线程初始
    微信公众平台开发(85) 获取用户地理位置
    微信公众平台开发(86) 获取用户基本信息
    微信公众平台开发(87) 获取关注者列表
  • 原文地址:https://www.cnblogs.com/ZhengYing0813/p/11715630.html
Copyright © 2011-2022 走看看