6/21课上内容整理

196 阅读5分钟

#运算符号的补充

逻辑运算

and 与

or 或

not 非
这三个运算符都是用来配合条件一起使用的

and是链接多个结果都必须成立的才算成立(True)

or是链接的多个结果中有一个成立的就算成立的(True)

not将条件取反 白的变成黑的 黑的变成白的

  • 如果链接的结果中都是and只要有一个不符合就算错 则不成立
  • 如果链接的结果中有一个or符合就算对的 则成立
  • 三者同时使用是有优先级的 需要加上括号进行使用 (3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)

成员运算符号

in 在什么什么之内

not in 不在什么什么之内

l1 = ['jason', 'kevin', 'tony', 'oscar', 'jerry']

判断某个人名在不在班级学生名单中(判断某个个体在不在某个群体内)

print('jason' in l1) # True

print('ja' in l1) # False

print('jason kevin' in l1) # False

列表在做成员运算的时候最小单位是数据值整体 不能再拆分也不能合并

s1 = 'hello big baby!'

print('h' in s1) # True

print('he' in s1) # True

print('hell' in s1) # True

print('hello' in s1) # True

字符串在做成员运算的时候最小单位是单个字符 也可以增加字符个数

d1 = {'name': 'jason', 'pwd': 123}

print('jason' in d1) # False

print(123 in d1) # False

print('name' in d1) # True

print('pwd' in d1) # True

字典在做成员运算的时候只有K会参与运算 V默认不暴露给外界

身份运算

is:判断数据值的内存是否在一个地址

==:判断数据值的值是否一致 位置无所谓

值相等 内存地址可能不等
内存地址相等 值肯定相等(单次程序中)

  • python内存优化 l1 = 10

l2 = 10

print(id(l1)) # 140707857893312

print(id(l2)) # 140707857893312

python针对数据量比较小的并且经常使用的数据会做内存优化:小整数池

流程控制理论

  • 事务的执行流程 总共分为三种
  • 1 就是从上到下的顺序依次执行
  • 2分支执行 根据条件的不同执行不同的代码、
  • 3循环结构 根据条件的判断是否一直做某件事

储备知识

  • 1.python中使用代码的缩进来表示代码的从属关系 缩进的代码是否运行取决于上面没有缩进的父代码(结尾有冒号)
  • 2.缩进量其实没有要求 只要缩进了即可 但是为了美观 一般推荐使用四个空格
  • 3.并不是所有的代码都可以拥有子代码 if关键字 else关键字 elif关键字 ( elif else不能单独使用)
  • 4.同属于一个父代码的多行子代码应该保证相同的缩进量 如果代码缩进了 那就必须往上找一个缩进量比它小的代码作为父代码 这个父代码如果可以拥有子代码 那么没有问题 不可以则直接报错
  • 5.相同缩进量的代码彼此之间没有主次之分 都是按照顺序依次执行

流程控制分支结构

  • 在python中需要编写分支流程那就需要关键字IF
  • 1 if分支条件成立执行的子代码
    条件可以是布尔值也可以是表达式 判断的条件可以是一个也可以是逻辑运算符链接的多个

image.png

  • 2 if..else分支 if条件成立之后的子代码 else是成立执行的子代码 判断的条件可以是一个也可以是多个运算符链接的多个
  • 3获取用户名和密码 name = input('name>>>:') pwd = input('pwd>>>:') 判断用户名和密码是否正确(目前只能写死)
    1. if...elif...else分支

      if 条件1::条件1成立执行的子代码

      elif 条件2::条件1不成立 条件2成立执行的子代码

      elif 条件3:条件1和2都不成立 条件3成立执行的子代码

      else:上述所有的条件都不成立执行的子代码

      if elif else三者连用 永远只会走一个分支

      elif 和 else都不能单独使用 必须结合if

  • 5 if的嵌套使用 在大街上看到一个漂亮的背影 上去要微信

如果要微信成功了 则邀请她去看电影(她可能拒绝 也可能接受)

如果接受了则继续吃饭 逛街 等待天黑!!!

1.先定义出各种条件

is_wechat = True

is_movie = True

is_agree = False

is_xxx = True

2.条件判断 if is_wechat:

    print('要微信成功了')
    
    if is_movie:
    
        print('要去看电影了 找个后排座位 视野好')
        
        if is_agree and True:
        
            print('吃饭 逛街 天黑了!!!')
            
        else:
        
            print('你个臭流氓!!!')
            
    else:
    
        print('看电影多无聊!!!')
        
else:

    print('你个癞蛤蟆!!!')
    

作业

1.女人的年龄>=18并且<22岁并且身高>170并且体重<100并且是漂亮的,那么:表白,否则:叫阿姨好

image.png

2.根据用户输入内容打印其权限 ''' jason --> 超级管理员se tom --> 普通管理员 jack,rain --> 业务主管 其他 --> 普通用户 '''

image.png 3.编写用户登录程序

要求:有用户黑名单 如果用户名在黑名单内 则拒绝登录 eg:black_user_list = ['jason','kevin','tony'] 如果用户名是黑名单以外的用户则允许登录(判断用户名和密码>>>:自定义) eg: oscar 123 4.整理今日内容及博客:针对分支结构代码需要配相应流程图