一、逻辑运算符

and 与

# 可以用and连接多个条件,会按照从左到右顺序依次判断,一旦某一个条件为False,则无需再往右判断,可以立即判定最终结果就为False,只有在所有条件的结果都为True的情况下,最终结果才为True

or 或

# 可以用or连接多个条件,会按照从左到右的顺序依次判断,一旦某一个条件为True,则无需再往右判断,可以立即判定最终结果就为True,只有在所有条件的结果都为False的情况下,最终结果才为False

not 非

# 取反
# 类似于说反话

三者混合使用的时候有优先级之分

not>and>or
# 但是可以使用括号来改变优先级
(3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)

二、成员运算符

判断个体是否在某个群体中

符号:in(在)  not in(不在)
name_list = ['kevin', 'jack', 'tony', 'tom']

# print('kevin' in name_list)  # True
# print('aaa' not in name_list)
# print('bbb' in name_list)

print('k' in 'kevin')
print('hello' in 'helloworld')

三、身份运算符

判断两个值是否相等

is		用来判断内存地址是否相同
==		用来判断数据值是否相同
s1 = ['a', 'b', 'c']
s2 = ['a', 'b', 'c']
print(s1 == s2)
print(id(s1))
print(id(s2))

print(s1 is s2)

结论:

值相等内存地址不一定相等

内存地址相等的值一定相等

四、流程控制

流程控制就是控制事物的执行流程

流程控制总共有3种情况:

顺序结构:就是自上而下的执行

image

分支结构:分支结构就是根据条件判断的真假去执行不同分支对应的子代码

image

循环结构:循环结构就是重复执行某段代码块
image

注意事项

  • python中使用代码的缩进来表示代码的从属关系
    从属关系:缩进的代码(子代码)是否执行取决于上面没有缩进的

  • 并不是所有的代码都可以拥有缩进的代码(子代码)
    if关键字

  • 如果有多行子代码属于同一个父代码 那么这些子代码需要保证相同的缩进量

  • python中针对缩进量没有具体的要求 但是推荐使用四个空格(windows中tab键)

  • 当某一行代码需要编写子代码的时候 那么这一行代码的结尾肯定需要冒号

  • 相同缩进量的代码彼此之间平起平坐 按照顺序结构依次执行

五、分支结构

(1)、单if判断

#输入一个数字判断是否比5大
a = int(input('请输入数字'))
#当程序运行到这里会开始判断变量a的大小
if a > 5:
    #当a比5大
    print('该数值比5大')

(2)、双分支结构


#输入一个数字判断是比5大还是比5小
a = int(input('请输入数字'))
#当程序运行到这里会开始判断变量a的大小
if a > 5:
    #当a比5大
    print('该数值比5大')
else:
    #当a比5小
    print('该数值比5小')

(3)、多分支结构

#这里换个例子
#吃饭
#输入有多少钱
money_have = int(input('请输入数字'))
#判断这些钱能干嘛
if money_have > 15:
    print('吃的比较一般')
elif money_have > 30:
    print('吃的很好')
else:
    print('不够吃饭呐')

(4)、if的嵌套使用

#嵌套
#举个考试的例子
is_test = input('请输入是否参加了考试:')

if is_test == '是':
    #再判断考试成绩的等级
    grade = int(input('请输入成绩'))
    if grade >= 90:
        print('优秀')
    elif grade >= 80:
        print('良好')
    elif grade >= 70:
        print('一般')
    elif grade >= 60:
        print('及格')

else:
    excuse = input('请输入理由')
    print(excuse)
    print('挂科 交钱重修')

六、循环结构while

(1)、while

  • 当程序符合条件的时候,会一直循环while中的代码,这也是循环语句的由来。判断条件也和if一样可以用上之前学的身份运算符(is)和成员运算符(in)、逻辑运算符(and、or、not)、等于号(==)等

image

"""
	while语法格式
		while 条件:
			循环体
"""
while True:
    username=input('username:>>>')
    password=input('password:>>>')  #

    if username == 'kevin' and password == '123':
        print('登录成功')
    else:
        print('登录失败')

(2)、while+break

# count = 0
while True:
    username=input('username:>>>')
    password=input('password:>>>')  #

    if username == 'kevin' and password == '123':
        print('登录成功')
        break # 结束本层循环
    else:
        print('登录失败')

(3)、break本层含义

while True:
    username=input('username:>>>')
    password=input('password:>>>')  #

    if username == 'kevin' and password == '123':
        print('欢迎光临')
        while True:
            cmd=input('请输入你的指令:>>>')
            if cmd == 'q':
                # 结束程序
                break
            print('正在执行你的指令:%s' % cmd)
        break
    else:
        print('登录失败')
print(123)

(4)、标志位的使用

flag = True
while flag:
    username=input('username:>>>')
    password=input('password:>>>')  #

    if username == 'kevin' and password == '123':
        print('欢迎光临')
        while flag:
            cmd=input('请输入你的指令:>>>')
            if cmd == 'q':
                # 结束程序
                flag = False
            print('正在执行你的指令:%s' % cmd)
    else:
        print('登录失败')