【2022-06-21】Python常见运算符与流程控制

Python常见运算符与流程控制

逻辑运算符

  • 逻辑运算符用于多条件连接,在程序中,经常会用逻辑运算符来进行多个条件的判断,其运算的结果只有两种,真(True)或假(Flase)

  • 逻辑运算符有三种,与(and)、或(or)、非(not),表达方式如下:

    # a and b    # 当a和b的值均为True时,逻辑表达式为True,否则为False
    
    # a or b     # 当a和b之中至少有一个为True时,逻辑表达式为True,否则为False
    
    # not a      #  当a为True时,逻辑表达式结果为False;当a为False时,逻辑表达式结果为True
    
  • 逻辑运算符与and

    格式:条件1and条件2

    意思:既要满足条件1又要满足条件2的运算结果为True,否则为False

    举例:

    # 假设变量a为10,b为20
    
    a = 10 
    b = 20
    
    if a and b :
        print("变量a和变量b都为True")        # 如果a为True, a和b返回值为True, 否则它将返回b的计算值  (a and b)返回10
    else:
        print("变量a和变量b 有一个不为True")  # 如果a为False,a和b返回值为False,否则它将返回b的计算值  (a and b)返回20
    
  • 逻辑运算符或or

    格式:条件1or条件2

    意思:满足条件1或条件2的运算结果为True,否则为False

    举例:

    # 假设变量a为10,b为20
    
    a = 10
    b = 20
    
    if a or b :
        print("变量a和变量b都为True,或其中一个变量为True")  # 如果a和b都为True,或其中一个变量为True,则运算结果为True  (a or b)返回10或20
    else:
        print("变量a和b都不为True")                       # 如果a和b都不为True,则返回值为False
    
  • 逻辑运算符非not

    格式:Not 条件

    意思:条件为真,则运算结果为False,条件为假,则运算结果为True

    举例:

    # 假设变量a为10,b为20
    
    a = 10
    b = 20
    
    if not (a and b):
        print("变量a和变量b都为False,或其中一个变量为False")   
    else:
        print("变量a和b都为True")                    #  如果a为True,则返回False。如果a为False,则返回True
    
    

成员运算符

  • 成员运算符是用来识别某一元素是否包含在变量中,这个变量可以是字符串、列表、元组

  • 成员运算符也有两种,运算符in和not in

  • in:在指定的序列中是否包含了元素,如果是返回True,否则返回False # a在b的序列中,则返回True,否则返回False

  • not in:如果在指定的序列中没有找到值,则返回True,否则返回False # a不在b的序列中,则返回True,否则返回False

  • 实例演练:

    # 假设变量a为10,b为20,列表内是否包含变量a和b
    
    a = 10
    b = 20
    list = [1, 2, 3, 4, 5 ]
     
    if ( a in list ):
       print ("1 - 变量 a 在给定的列表中 list 中")
    else:
       print ("1 - 变量 a 不在给定的列表中 list 中")
     
    if ( b not in list ):
       print ("2 - 变量 b 不在给定的列表中 list 中")
    else:
       print ("2 - 变量 b 在给定的列表中 list 中")
     
    # 修改变量 a 的值,在进行查看
    a = 2
    if ( a in list ):
       print ("3 - 变量 a 在给定的列表中 list 中")
    else:
       print ("3 - 变量 a 不在给定的列表中 list 中")
    
  • 输出结果:

    1 - 变量 a 不在给定的列表中 list2 - 变量 b 不在给定的列表中 list3 - 变量 a 在给定的列表中 list

身份运算符

  • 身份运算符是用来判断两个对象的存储单元是否相同的一种运算符号

  • 身份运算符只有is和is not两个运算符,返回的结果都是True或者False

  • is是判断两个标识符是不是引自用同一个对象,如果是则返回True,否则返回False

  • is not是判断两个标识符是不是引用自不同对象,如果是则返回True,否则返回False

  • 实例演练:

  • 假设a = 1, b = 2, c=a, a和b这两个变量存储的内容是不一样的,所以存储单元肯定不一致,但是c和a其实都是1,这两个变量的存储单元是一致的

    # 身份运算符
    
    a = 1
    b = 2
    c = a
    print(a is b)                       # False
    print(a is c)                       # True
    
    
    a = 1
    b = 2
    c = a
    print(a is not b)                   # True
    print(a is not c)                   # False
    

Python的缩进规则

  • python的一大特色,强制缩进,目的是为了让程序知道,每段代码依赖于哪个条件,如果不通过缩进的方式来区分,程序怎么知道,当你的条件成立后,去执行哪些代码呢?

  • 在其他的语言里,大多通过{}来确定代码块,比如C,C++,java,javascript都是这样。但Python比较特殊,依靠强制缩进来区分代码块,这也是python简洁的地方,所以我们要多加注意。

  • python的缩进有以下几个原则

    顶级代码必须顶行写,即如果一行代码本身不依赖于任何条件,那他必须不能进行任何的缩进

    同一级别的代码,缩进必须一致

    官方建议缩进使用四个空格

流程控制理论

  • 简单理解,流程控制就是控制程序中的代码按照指定的结构顺序来执行,从而实现我们要完成的功能

  • 流程控制主要有三种结构

    1. 顺序结构

      指程序从上向下依次执行每条语句的结构

    2. 分支结构

      程序在由上往下执行代码的过程中,根据不同的条件,执行不同路径的代码,从而得到不同的结果,通常通过用if语句来实现分支结构

    3. 循环结构

      根据判断条件来重复性的执行某段代码,通常通过while语句、fo语句来实现循环结构

流程控制之分支结构

  • python中的if else语句可以分为三种形式,分别是if语句、if else语句和if elif else语句

  • if语句,也称为单分支

语法结构:

​ if 条件:

​ 满足条件后执行的代码

例如:

# 1.先定义一个年龄
age = 24
# 2.判断人物的年龄
if age < 24:
    print('永远年轻,永远热泪盈眶')

  • if else语句

    语法结构:

    ​ if 条件:

    ​ 满足条件后执行的代码

    ​ else:

    ​ 不满足条件后执行的代码

    例如:

    # 1.先定义一个年龄
    age = 18
    # 2.判断人物的年龄
    if age > 18:
        print('年轻不是挥霍的资本')
    else:
        print('永远年轻,永远热泪盈眶')
    


  • if elif else语句

    语法结构:

    ​ if 条件:

    ​ 满足条件后执行的代码

    ​ elif:

    ​ 上面的条件不满足后执行的代码

    ​ elif:

    ​ 上面的条件不满足后执行的代码

    ​ else:

    ​ 上述所有条件都不满足后执行的代码

    例如:

    # 先定义一个成绩
    score = 73
    if score > 90:
        print('优秀')
    elif score > 80:
        print('良好')
    elif score > 70:
        print('一般')
    elif score > 60:
        print('及格')
    else:
        print('不及格')
    

  • if嵌套语句

# 比如你去面试了,先进行的是笔试
# 笔试通过了,进行面试
# 进行第二次面试
# 没通过,别气馁,找下一家

# 1.先定义条件

is_written = True   # 笔试通过
is_Interview = True  # 一面通过
is_Second_interview = True  # 二面未通过
is_not_pass = False   # 未通过

# 2.进行条件判断

if is_written:
    print('恭喜你在此次笔试中脱颖而出')
    if is_Interview:
        print('恭喜你通过了第一轮的面试')
        if is_Second_interview:
            print('恭喜你通过了第二轮的面试')
            if is_not_pass:
                print('抱歉,您未能通过我们的考核')
            else:
                print('没关系,拜拜就拜拜,下一家')
        else:
            print('可惜了,有几道题没答好')
    else:
        print('唉!回炉再造吧')
else:
    print('这家不行,换下一家')


  ###  大鹏一日同风起,扶摇直上九万里
  ###  假令风歇时下来,犹能簸却沧溟水             

                                                    ——摘自《上李邕》  作者:李白






  ###  路漫漫其修远兮,吾将上下而求索 ###
posted @   dy12138  阅读(44)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示