• Python基本运算符


    Python基本运算符

    数学运算

    运算符 说明 实例 结果
    + 12.45 + 15 27.45
    - 4.56 - 0.26 4.3
    * 乘,还可以与字符串使用,表示将字符串重复n次 5 * 3.6
    "ABC" * 2
    18.0
    ABCABC
    / 除法(和数学中的规则一样) 7 / 2 3.5
    // 整除(只保留商的整数部分) 7 // 2 3
    % 取余,即返回除法的余数 7 % 2 1
    ** 幂运算/次方运算,即返回 x 的 y 次方 2 ** 4 16

    整型和浮点型都属于数字,彼此可以直接进行数学运算。

    +号和*号在字符串和列表中也能使用。+号能将多个字符串或列表拼接到一起,*号能将字符串或列表元素重复n次

    x = '胖虎'
    s = '吃肉'
    print(x + s)
    # 胖虎吃肉
    
    l = [1,'a',3]
    l2 = ['d','c','e']
    print(l + l2)
    # [1, 'a', 3, 'd', 'c', 'e']
    
    print(s * 3)
    # 吃肉吃肉吃肉
    
    print(l * 3)
    # [1, 'a', 3, 1, 'a', 3, 1, 'a', 3]
    

    位运算

    Python 位运算符只能用来操作整数类型,它按照整数在内存中的二进制形式进行计算,并不是整数的二进制形式的运算。

    位运算符 说明 使用形式 举 例
    & 按位与 a & b 4 & 5
    | 按位或 a | b 4 | 5
    ^ 按位异或 a ^ b 4 ^ 5
    ~ 按位取反 ~a ~4
    << 按位左移 a << b 4 << 2,表示整数 4 按位左移 2 位
    >> 按位右移 a >> b 4 >> 2,表示整数 4 按位右移 2 位

    赋值运算

    =:最基本的赋值运算符是等号=,用来将一个表达式的值赋给另一个变量;结合其它运算符,=还能扩展出更强大的赋值运算符。

    运算符 说 明 用法举例 等价形式
    = 最基本的赋值运算 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 指的是右移的位数

    增量赋值

    age += 2  # age=age+2
    age -= 2
    age **= 2  # age = age ** 2
    print(age)
    

    链式赋值

    x=y=z=10
    print(id(x))
    print(id(y))
    print(id(z))
    

    交叉赋值

    # 直接交换两个变量值,而不用定义第三个变量。
    x=10
    y=20
    x,y=y,x
    print(x)
    print(y)
    # 20 10
    

    解压赋值

    salary = [1.1, 2.2, 3.3, 4.4, 5.5]
    mon1=salary[0]
    mon2=salary[1]
    mon3=salary[2]
    mon4=salary[3]
    mon5=salary[4]
    # 下面的1行赋值等同于上面的5行
    mon1,mon2,mon3,mon4,mon5=salary
    print(mon1,mon2,mon3,mon4,mon5)
    
    # 变量名多一个不行少一个不行,必须与值一一对应。下面俩都会报错
    mon1,mon2,mon3,mon4=salary
    mon1,mon2,mon3,mon4,mon5,mon6=salary
    
    # 可以使用*_来接收其他多余的值。*号会将多余的值全部接收到一个列表中,然后复制给_
    mon1,mon2,mon3,*_=salary
    print(mon1,mon2,mon3)
    print(_)
    # 1.1 2.2 3.3 
    
    mon1,mon2,*_,mon5=salary
    print(mon1)
    print(mon2)
    print(mon5)
    # 1.1 2.2 5.5
    
    
    # 字典接收的是键,可以通过键取到值。
    dic={"k1":111,"k2":222,'K3':333}
    x,y,z=dic
    print(x,y,z)
    # k1 k2 K3
    
    x,*_=dic
    print(x)
    # k1
    

    比较运算

    比较运算符 说明
    > 大于,如果>前面的值大于后面的值,则返回 True,否则返回 False。
    < 小于,如果<前面的值小于后面的值,则返回 True,否则返回 False。
    == 等于,如果==两边的值相等,则返回 True,否则返回 False。
    >= 大于等于(等价于数学中的 ≥),如果>=前面的值大于或者等于后面的值,则返回 True,否则返回 False。
    <= 小于等于(等价于数学中的 ≤),如果<=前面的值小于或者等于后面的值,则返回 True,否则返回 False。
    != 不等于(等价于数学中的 ≠),如果!=两边的值不相等,则返回 True,否则返回 False。
    is 判断两个变量所引用的对象是否相同,如果相同则返回 True,否则返回 False。
    is not 判断两个变量所引用的对象是否不相同,如果不相同则返回 True,否则返回 False。

    ==号同类型数据都可以进行比较。>和<可以比较字符串和列表。

    逻辑运算符

    逻辑运算符 含义 基本格式 说明
    and 逻辑与运算,等价于数学中的“且” a and b 当 a 和 b 两个表达式都为真时,a and b 的结果才为真,否则为假。
    or 逻辑或运算,等价于数学中的“或” a or b 当 a 和 b 两个表达式都为假时,a or b 的结果才是假,否则为真。
    not 逻辑非运算,等价于数学中的“非” not a 如果 a 为真,那么 not a 的结果为假;如果 a 为假,那么 not a 的结果为真。相当于对 a 取反。

    在没有括号“()”的情况下,优先级:not>and>or。同一优先级从左至右依次计算。

    另外,and 和 or 运算符会将其中一个表达式的值作为最终结果,而不是将 True 或者 False 作为最终结果。

    短路运算

    and运算只要有一项为False,后面的结果不用判断,最终结果一定为False。

    or运算只要有一项为True,后面的结果不用判断,最终结果一定为True。

    print('ha' and 123)
    # 123
    
    print(123 or 'abc')
    # 123
    

    身份运算

    is比较的是id
    ==比较的是值
    

    id一样,值一定一样。值一样,id不一定一样。

    成员运算:

    判断值是否在对象中。

    • in 若在,返回True。
    • not in 若不在,返回True。
    例:s = '李白苏轼杜甫'
    print('白苏' in s)
    # True
    print('李苏' nor in s)     
    #字符串‘李苏’为一个整体,并不包含在s当中,所以返回为True
    

    Python运算符优先级

    以下表格列出了从最高到最低优先级的所有运算符:

    运算符 描述
    ** 指数 (最高优先级)
    ~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
    * / % // 乘,除,取模和取整除
    + - 加法减法
    >> << 右移,左移运算符
    & 位 'AND'
    ^ | 位运算符
    <= < > >= 比较运算符
    <> == != 等于运算符
    = %= /= //= -= += *= **= 赋值运算符
    is is not 身份运算符
    in not in 成员运算符
    not and or 逻辑运算符
  • 相关阅读:
    初识人工智能(二):机器学习(三):sklearn数据集
    初识人工智能(二):机器学习(一):sklearn特征抽取
    Python3标准库:json JavaScript对象记法
    Python3标准库:uuid 全局唯一标识符
    Python3标准库:http.cookies HTTP cookie
    Python3标准库:base64 用ASCII编码二进制数据
    Python3标准库:urllib.robotparser Internet蜘蛛访问控制
    初识人工智能(一):数据分析(四):pandas数据分析
    ubuntu18.04.4安装k8s
    elasticsearch7.5.0+kibana-7.5.0+cerebro-0.8.5集群生产环境安装配置及通过elasticsearch-migration工具做新老集群数据迁移
  • 原文地址:https://www.cnblogs.com/ChiRou/p/14007414.html
Copyright © 2020-2023  润新知