• 基本运算符(解压缩)


    运算符

    算数运算符

    • 进行算是运算的符号,跟正常数学运算一样
    • 乘号用*代替,除号用/代替
    • 在Python2.x和Python3.x中,除号的运算结果可能不一致,2中可能小数四舍五入
    • Python没有自增自减运算符
    # "%"取余运算:只要余数
    y = 9%5
    print (y)
    

    4

    # // 表示取商运算,也叫地板除,只要商数
    y = 9//5
    print (y)
    

    1

    # ** 表示幂运算
    y = 9 ** 5
    print (y)
    

    59049

    比较运算符

    • 对两个变量或者值进行比较
    • 比较的结果用布尔值显示,即True/False
    # == 等于
    y = 7 * 5
    x = y == 30
    print(x)
    

    False

    # != 不等于  >=   <= 
    

    赋值运算符

    # = 赋值
    # +=,是缩写
    a = 0
    a += 9    # a = a + 9 的缩写
    print(a)
    

    9

    # 所有数学运算都有缩写形式
    # -=, ==, /=, //=, %=, **=
    

    逻辑运算符

    1. and 逻辑与
    2. or 逻辑或
    3. not 逻辑非

    运算规则

    • and看做乘法,or看做加法
    • True看做1,False看做0
    • 将逻辑运算转换成整数数学运算
    • 最后结果为0则为False,否则为True

    逻辑运算的短路问题

    • 逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再进行计算,直接返回
    1 <= 1 and 1 >= 1
    True
    

    True

    1 > 1 and 1 <= 1
    

    False

    成员运算符

    • 用来检测某一个变量是否是另一个变量的值
    • in
    • not in
    number = [1, 2, 3, 4, 5]
    a = 6
    b = a in number
    print(b)
    

    False

    身份运算符

    • 用来检测两个变量是否是同一个变量,比较的是id
    • 变量相同,值不一定相同(小整数池除外)
    • is
    • is not
    a = 10
    b = 10
    
    print(a is b)
    print(a == b)
    

    True
    True

    x = 257
    y = 257
    
    print(x is y)
    print(x == y)
    

    False
    True

    Python运算符优先级

    • 没那么多事,想优先的就括号括起来,方便写也方便看

    链式赋值(必考)

    x = 10
    y = 10
    z = 10
    
    x = y = z = 10
    # 两段代码相同
    

    交叉赋值(必考)

    x = 10
    y = 20
    # 把x和y的值对换
    
    z = x
    x = y
    y = z
    print(x, y)
    

    20 10

    x = 10
    y = 20
    
    x, y = y, x
    print(x, y)
    

    20 10

    解压缩(必考)

    • "_"就代表无用的值
    • "*-"的数量无法控制
    hobby_list = ['piao', '666', 2333, 999, 'handsome', 'read', 'music', 'basketball']
    # 如果要取出下标为1, -1的值
    
    _, hobby1, *_, hobby2 = hobby_list
    print(hobby1, hobby2)
    

    666, basketball

    补充:a += 1和a = a + 1的区别

    • a += 1是在a原有的内存空间中加
    • a = a + 1是开辟了一块新的内存空间,然后再把a + 1的结果丢进去
    a = [1, 2, 3]
    print(id(a))    # 2527997011528
    a += [1]
    print(id(a))    # 2527997011528
    a = a + [1]
    print(id(a))    # 2527999522696
    
    a += '111'      
    print(a)        # [1, 2, 3, 1, 1, '1', '1', '1']
    # a = a + '111'   # 报错
    # print(a)
    
  • 相关阅读:
    jQuery Mobile方向感应事件
    Linq-多条件查询
    linux top命令详解
    在Python中调用C++,使用SWIG
    linux下core文件调试方法
    如何设置、查看以及调试core文件
    标准C++中的string类的用法总结(转)
    实用make最佳实践
    GDB多进程调试(转)
    GDB详解
  • 原文地址:https://www.cnblogs.com/lucky75/p/10900837.html
Copyright © 2020-2023  润新知