zoukankan      html  css  js  c++  java
  • 疫情环境下的网络学习笔记 python Day 05

    2.22

    上午

    上节课复习

    1. 计算机基础

      三大核心硬件:CPU,内存,硬盘

      由硬盘读到内存,再由cpu取出程序的指令去运行

      操作系统:控制程序,控制计算机底层硬件运行

      一个完整的计算机体系结构分为3层

      • 应用程序(暴风影音)
      • 操作系统(windows,Linux)
      • 计算机硬件

      平台 = 操作系统 + 计算机硬件

    2. python程序运行的三个步骤

      1. 先启动一个python解释器:从硬盘读到内存

      2. 解释器将py文件由硬盘读入内存

      3. 解释器去解释执行py文件的内容,识别python语法

    3. 布尔类型

    4. 输入输出,格式化输出

    5. 基本运算符

    6. if判断

      if 条件1:
      	子代码块1
      elif 条件2:
      	子代码块2
      else:
      	子代码块
      

      子代码块:具有相同的缩进

      indentation Error:unexpected indent 缩进错误

      不是所有软件的Tab都是4个空格

      else必须放在最后

    补充

    == 比较的是值,只能是同样数据类型之间的比较

    短路运算基本原则

    and的左边为False,右边不会再执行判断;当 or 的左边为True,右边不会再进行判断

    交叉赋值

    a = 10
    b = 20
    

    想要把a,b的值互换

    a,b = b,a
    

    链式赋值

    a = 1
    b = a
    c = b
    

    等同于

    a = b = c = 1
    

    解压赋值

    取列表开头或结尾的值(***)

    sal = [1, 2, 3]
    x = sal[0]
    y = sal[1]
    z = sal[2]
    

    等同于

    x,y,z = sal
    

    解压赋值正常情况下,左边变量名的个数应与右边包含的个数相同,多或少都不行

    如果左边的变量要少于右边,可以加 *

    sal = [1, 2, 3, 4, 5]
    x, y, *z = sal
    
    • x,y 会对应列表sal的前2个值,然后 * 会把剩余的值存放一个列表,然后赋值给 z

    • *匹配所有剩余变量的值

    *z, a, b = sal
    

    ​ a,b取后两个值,前面所有的值存成列表赋值给z

    两边同时取值也可也,在中间放*

    要取中间的值还是要用索引

    解压赋值:字典

    由于字典是 key:value 形式,解压赋值字典得到的都是key

    逻辑运算符的优先级

    优先级:() > not > and > or

    • not与紧跟其后的那个条件是不可分割的,把not后条件看成一个整体看就可以

    • 如果条件语句全部由纯 and纯 or 连接,则没有优先级之分,由左到右依次计算即可

    • 对于既有 and 又有 or 连接的语句:以 and 为中心,左右条件用括号括起来

    短路运算

    实际上可以看作 and 和 or 的偷懒原则

    所有数据类型的值都自带布尔值,所以值可以直接被当成是条件使用

    • 0 , None , 空 ,三种值对应的布尔值为False,其余全为True

      • 空:'', [], {} 空字典,空列表,空字符串
    • and 运算符会返回当前计算位置的值

      res = 0 and 111   #返回结果 0 
      res = 1 and 111   #返回结果 111 
      

      例题

      1 or 0				#返回 1
      0 and 2 or 1		#返回 1
      0 and 2 or 1 or 4   #返回 1
      

    新课

    循环

    什么是循环?

    ​ 循环就是重复做一件事

    为何要用循环?

    ​ 为了让计算机能够像人一样去做重复事情

    如何用循环

    while循环

    又称为条件循环,运行直到条件不成立

    while 条件:
    	子代码块1
    	子代码块2
    

    死循环:条件永远为真,循环无法结束,写程序是要避免

    如何中止循环

    1. 定义一个变量存储循环运行的条件,改变变量,完成一次循环后,下一次循环,判断条件不成立,则中止循环

      tag = True
      while tag:
      	print('ok')
      	tag = False
      
    2. break 立刻中止本层循环

    while tag:
    	print('ok')
        break
    	print('不执行')
    

    需求:嵌套多层循环,想一次性中止所有循环

    • 使用多个break,一个个跳出当层循环
    • 每层循环使用同样的条件,在最后一层循环改变条件

    两种中止的方式区别:第一种直接跳出循环,break下代码不执行,第二种执行完本次代码块后再结束

    下午

    循环嵌套案例

    需求1:编辑账号密码,重新输入重新验证

    需求2:账号密码输错三次退出程序

    需求3:输对账号密码后,登陆成功,可以循环接收用户输入的命令并执行

    user_name = 'deimos'
    password = '123'
    count = 0
    while count <3:
        input_user = input('input user name')
        input_pwd = input('input password')
        
        if input_user == user_name and input_pwd == password:
            print('登陆成功')
            while True:
                if cmd == 'quit':
                    break
            	cmd =input('请输入命令,输入quit退出')
            	print('%s 正在执行'%cmd)
            break
            
        else:
            print('输入错误')
            count+=1
    

    while + continue

    continue后的代码不运行,结束本次循环,进入下一次循环

    while + else

    count = 1
    while count < 6:
    	print(count)
    	count+ = 1
    else:
    	print('此处的代码执行')
    

    else对应的子代码块在 while 循环结束后,并且不是在break结束的条件下,才会执行

    count = 1
    while count < 6:
    	if count ==4:
    		break
    	print(count)
    	count+ = 1
    else:
    	print('此处的代码不允许')
    

    continue的代码,else也会执行

  • 相关阅读:
    神经网络和深度学习之——前馈神经网络
    神经网络和深度学习之感知器工作原理
    神经网络和深度学习之神经元和感知器
    基于keras的BiLstm与CRF实现命名实体标注
    基于双向BiLstm神经网络的中文分词详解及源码
    Net Core中数据库事务隔离详解——以Dapper和Mysql为例
    利用卷积神经网络(VGG19)实现火灾分类(附tensorflow代码及训练集)
    AlexNet 网络详解及Tensorflow实现源码
    ASP.NET Core MVC I/O编程模型
    Tensorflow开发环境配置及其基本概念
  • 原文地址:https://www.cnblogs.com/telecasterfanclub/p/12345737.html
Copyright © 2011-2022 走看看