• 赋值,逻辑,运算符, 控制流程之if 判断


    增量赋值运算

    (1). 增量运算

    age += 1  # age = age + 1
    print(age)
    
    age -= 10  # age = age - 10
    View Code

    (2).交叉赋值

    x = 111
    y = 222
    
    # temp=x
    # x=y
    # y=temp
    
    python 中的交叉赋值
    x, y = y, x
    print(x)
    print(y)
    View Code

    (3)链式赋值

    x=10
    y=x
    z=y
    x = y = z = 10
    print(id(x),id(y),id(z))
    View Code

    (4). 解压赋值

    列表解压
    传统的取值
    salaries = [111, 222, 333, 444, 555]
    mon0 = salaries[0]
    mon1 = salaries[1]
    mon2 = salaries[2]
    mon3 = salaries[3]
    mon4 = salaries[4]
    
    解压取值
    mon0,mon1,mon2,mon3,mon4=salaries
    print(mon0)
    print(mon1)
    print(mon2)
    print(mon3)
    print(mon4)
    
    注意1: 变量名与值的个数必须一一对应
    mon0,mon1,mon2,mon3,mon4,mon5=salaries  # 多一个变量名不行
    mon0,mon1,mon2,mon3=salaries  # 少一个变量名不行
    
    *_号收取多余的值, _会返回一个列表
    保留前 n个
    salaries = [111, 222, 333, 444, 555]
    mon0,mon1,*_=salaries
    print(mon0)
    print(mon1)
    print(_)
    
    保留后 n个
    *_,x,y=salaries
    print(x,y)
    print(_)
    
    取两边  
    x,*_,y,z=salaries
    print(x)
    print(y)
    print(z)

    字典解压后得到key, 跟列表一样的操作
    dic={'k1':111,'k2':222,'k3':3333}
    x,y,z=dic
    print(x,y,z)
    print(dic[x],dic[y],dic[z])
    字典解压
    了解的知识点
    x, y, z,a,b = "hello"
    print(x)
    字符串解压

    逻辑运算

    一, 只要能得到True 或 False 两种值的东西都能当做条件

    例:

    1. 显式布尔值: 表面就直接是True  或 False

    (1). 比较运算的结果

    print(10>3)
    print(10==3)

    (2). 变量值直接就是True 或False

    tag= True

    msg= False

    2. 隐式布尔值: 表面上是一种值, 底层会被解释器转换成True 或 False

    0.None.空布尔值为False, 其余值对应的布尔值均转为TRue
    10
    3.1
    ""
    []
    {"k1":222}
    None

    二. 逻辑运算符: 用来连接多个条件

    (1) , not 条件  : 对条件的结果取反

    print(not 10 > 3)
    print(not False)
    print(not 0)

    (2). 条件1  and 条件2  : 连接左右两条件, 两个条件都必须为真, 最终结果才为真

    print(True and 10 > 3)
    print(True and 10 == 3)

    (3). 条件1  or  条件2  : 连接左右两条件, 两个条件中只要有一个为True, 最终结果就为True

    print(False or 10 == 3)
    print(True or 10 == 3)

    偷懒原则---> 即短路原则

    and  : 其中一个不成立立马终止判断, 返回False

    or  : 其中一个成立立马终止判断, 返回True

    (4).  优先级  :  not  >  and  >  or  , 推荐使用括号取标识优先级

           False    or          True
    res=(3 > 4 and 4 > 3) or (not (1 == 3 and 'x' == 'x')) or 3 > 3
    print(res)

    流程控制之  if  判断

    if 判断的完整语法

    if 条件1:
        代码1
        代码2
        代码3
        ...
    elif 条件2:
        代码1
        代码2
        代码3
        ...
    
    ...
    
    else:
        代码1
        代码2
        代码3
        ...
    View Code
    运行原理示范:
    print(1111)
    print(2222)
    if True:
        print('if内的代码1')
        print('if内的代码2')
        print('if内的代码3')
    print(3333)
    运行原理

    语法1

    if 条件1:
        代码1
        代码2
        代码3
        ...
    gender = "female"
    age = 18
    is_beautiful = True
    
    if gender == "female" and 60 >= age >= 18 and is_beautiful:
        print('开始表白。。。')
    
    print('后续代码。。。')

    语法2

    if 条件1:
        代码1
        代码2
        代码3
        ...
    else:
        代码1
        代码2
        代码3
        ...
    gender = "female"
    age = 70
    is_beautiful = True
    
    if gender == "female" and 60 >= age >= 18 and is_beautiful:
        print('开始表白。。。')
    else:
        print('阿姨好,开个玩笑。。。')
    
    print('后续代码。。。')

    语法3

    if 条件1:
        代码1
        代码2
        代码3
        ...
    elif:
        代码1
        代码2
        代码3
        ...
    else:
      代码1
      代码2
      代码3
      ...
    # 如果:成绩 >= 90 那么:优秀
    #
    # 如果成绩 >= 80 且 < 90, 那么:良好
    #
    # 如果成绩 >= 70 且 < 80, 那么:普通
    #
    # 其他情况:很差
    
    
    score = input("请输入你的成绩:")  # score = "93"
    score=int(score)
    if score >= 90:
        print("优秀")
    elif score >= 80:
        print("良好")
    elif score >= 70:
        print("普通")
    else:
        print("小垃圾,很差")
    
    print('其他代码。。。。')
    View Code

    语法4

    if  嵌套

    gender = "female"
    age = 18
    is_beautiful = True
    is_successful = True
    
    if gender == "female" and 60 >= age >= 18 and is_beautiful:
        print('开始表白。。。')
        if is_beautiful:
            print('在一起')
        else:
            print('再见。。。')
    else:
        print('阿姨好,开个玩笑。。。')
    
    print('后续代码。。。')
    View Code
  • 相关阅读:
    三十六、主从复制监控
    三十五、主从复制原理
    IO模型
    格式化时间
    计算当前日期星座
    牛顿迭代法
    矩阵变换
    ffmpeg使用
    数独自动求解
    回溯迷宫找终点
  • 原文地址:https://www.cnblogs.com/Knge/p/13267035.html
Copyright © 2020-2023  润新知