• 学习python第一周


    day01:
        1、编程介绍(***)

       1.什么是编程语言?     :编程语言就是程序员跟计算机沟通的语言 , 类似于 中国人---通过汉语----与中国人沟通
        2、计算机硬件(*****)

       计算机核心硬件  cpu(控制器+运算器)  内存  硬盘

      运行程序与计算机硬件的关系

         程序最先存放于硬盘

         程序的运行是从硬盘把代码加载到内存中

        cpu从内存中取出指令运行      程序运行过程中产生的数据最先存放与内存

    ---------------

      IO问题与程序的效率

      1.把指令依赖的数据事先加载到内存,能从内存取数据就不要从硬盘取

      2.针对要永久存放的数据,应该在内存中攒一大波然后一次性写入硬盘
        3、操作系统与平台(*****)

      操作系统(Operating System,简称OS)  是管理计算机硬件软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。

      计算机体系的三层结构:

        应用程序/用户

        控制程序(操作系统:Windows  、Linux)

        计算机硬件

      平台: 计算机硬件+操作系统
        4、编程语言分类(***)

        机器语言  最低级的语言 不用经过翻译直接被机器识别  性能最好的方式

        汇编语言  低级语言  符号语言 使用助记符 或 地址符号代替机器指令的操作码与操作数  性能与机器语言相似

        高级语言  编程语言的集合

          解释型语言  一边执行一边翻译为机器语言    效率低于编译型 开发效率超过编译型  python 

          编译型语言  一次性翻译为机器语言      c c++
        5、安装python解释器(*****)

        官网下载 
    day02:

      注释:注释是为了方便更快的理解代码内容

      注释的类型 #  三引号成对使用 ''' '''      """ """
        1、变量(*****)

      什么是变量?

        量:记忆下事物的状态
        变:事物的状态是可以发生变化的

        变量就是一种控制计算机把数据存起来的机制,存到内存中

      为什么用变量?

        变量是为了控制计算机能够像人一样去记忆下事物的状态
          并且记录的状态是可以发生变化的

      怎么用?

        原则: 先定义,在引用

        name = 12

        print(name)

      变量的三大组成部分:

        变量名:相当于门牌号,用来访问 引用值

        = 赋值号 将值的内存地址绑定到变量名

        值:我们要记录的状态,数据

      变量名的命名:规定 字母、数字、下滑线组成  首字母不可以为数字

        一般原则:不使用关键字命名、变量名应该见名知意

        命名风格:驼峰提:NameOfHe

             小写加下划线: name_of_he   推荐使用

      变量值的三大特征

        id号:内存地址

        值的类型:int float str

        值自己

    =========内存管理值垃圾回收机制============

      垃圾:引用计数为0,

      引用计数:值被直接绑定与间接绑定次数总和

    ========================================
        2、基本数据类型(*****)

      (1)Number   数字类型 (int  float  bool  complex)

        int : 整数类型

          定义:age=10

           用于标识:年龄,等级,身份证号,qq号,个数

        float 浮点型 小数点类型

          定义:salary=3.1 #salary=float(3.1)

          用于标识:工资,身高,体重,

           bool:布尔值,一个True一个False #计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人脑能干什么,计算机就应该能干什么,人脑的主要作用是数据运行与逻辑运算,此处的布尔类型就模拟人的逻辑运行,即判断一个条件成立时,用True标识,不成立则用False标识

          

    #所有数据类型都自带布尔值
    1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
    2、其余均为真 

        重点:

    #1.可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典
    
    #2. 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)


      (2)str        字符串类型    

          在python中,加了引号的字符就是字符串类型,

          python并没有字符类型。

          定义:name='egon' #name=str('egon')

          用于标识:描述性的内容,如姓名,性别,国籍,种族

        字符串拼接(只能在字符串之间进行,且只能相加或相乘)
      (3)list        列表类型     

          在[]内用逗号分隔,可以存放n个任意类型的值

           定义:students=['egon','alex','wupeiqi',] #students=list(['egon','alex','wupeiqi',])

          用于标识:存储多个值的情况,比如一个人有多个爱好

      列表的嵌套与取值

        >>> students_info=[['egon',18,['play',]],['alex',18,['play','sleep']]]

        >>> students_info[0][2][0] #取出第一个学生的第一个爱好 'play'
      (4)tuple    元组类型     
      (5)set        集合类型     
      (6)dict        字典类型    

        在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型

        定义:info={'name':'egon','age':18,'sex':18} #info=dict({'name':'egon','age':18,'sex':18})

        用于标识:存储多个值的情况,每个值都有唯一一个对应的key,可以更为方便高效地取值
        3、输入输出(*****)

      input()  获取用户输入

      print() 输出

      格式化输出  占位符,如:%s、%d

          %s字符串占位符:可以接收字符串,也可接收数字

          %d数字占位符:只能接收数字

        print('My name is %s,my age is %s' %('egon',18))
        4、运算符(*****)
        算术运算

          +  - * / ** %  //

        比较运算

           <  >  !=   == <=   >=

        赋值运算

          增量赋值:x = x +1  相当于  x += 1

            +=   -=   *=  /=  //=   %=   **=

          链式赋值:x=y=z=10

          交叉赋值: x,y = y,x

          解压赋值:x,y,z=[1,2,3]   x,y,z =1,2,3

          *号的使用   *_,x,y = [1,2,3,4]  ===>  x = 3  y = 4  _=1,2  *为收集参数 位于首,倒着赋值  *_位于中间  两边赋值  位于末尾属于正向赋值

        逻辑运算 布尔运算   1 < 2 and 2>1   结果为True

          and   与     一假则假   同真为真

          or     或    一真则真   同假则假

          not    非   真假 互换

          三者的优先级关系:not>and>or,同一优先级默认从左往右计算。
         短路运算:逻辑运算的结果一旦可以确定,那么就以当前处计算到的值作为最终结果返回
            2 and 3 ===> 3
            0 and 2 ===> 0
            0 or 2 ===> 2
            2 or 3 ===> 2
     

        身份运算 

        is比较的是id
        可变类型 值相同 但id 绝不相同      而==比较的是值

         结论:如果要变量一个变量是否等于None、True、False,推荐使用is去判断
    day03:
        1、流程控制值if(*****)

        什么是if判断
        判断 条件1 并且 条件2:
            做什么事。。。
        否则:
            做什么事。。。

        为何要有if判断
        为了控制计算机能够像人一样去完成判断的过程

        如何用if判断   一个if 代码块  elif 可以有多个  else  只有一个或者没有   

      if True :

        代码块

      elif True:     #elif 0个或多个

        代码块

      else:   #0个或一个

        代码块

          可以嵌套使用
        2、流程控制之while循环(*****)

        1、什么是循环?
              循环指的就是重复做某一件事

        2、为何要有循环
              循环就是为了让计算机能够像人一样去重复做某件事

        3、如何用循环
              while循环,又称之为条件循环
             能够重复多少次取决条件何时变为假

        格式

        while 条件为真:    条件为真永远执行直到条件不为真 或者跳出循环
              代码1
              代码2
              代码3

        其他代码

      结束循环的方式

        结束while循环的方式
           方式一:把条件变为False,不会立刻结束循环,会等到把本次循环体代码都运行完毕后,
              下一次循环开始重新判断条件时才会结束

          方式二:break结束本层循环,只要运行到break就会立刻结束while循环,本次循环的后续代码都不会执行

        while循环的嵌套
         while True:
              while True:
                  while True:
               break
            break
             break

         while+else
        else:else的子代码会在循环正常结束的情况下运行(break干死while循环的的情况称之为非正常结束)


        3、流程控制之for循环(*****) 循环取值  遍历循环
        for循环在某种重复做某件事的场景下比while循环更简单

         for循环的次数取决in后跟那个对象里有多少值

           names=['egon','李根','王根']
          for item in names:
               print(item)  # 'egon','李根','王根'

         for+range: range(起始位置,结束位置,步长)

      

    1 for i in range(3):
    2     print("外层循环第%s次" %i)
    3         for j in range(2):
    4         print('======》内存循环第%s次' %j)  
    for 嵌套

    day04:
        1、数字类型(int、float)的常用操作(*****)

      

    数字类型转换

      转换成字符串  str( )

      转换成  整数int()

      转换成浮点数 float()

      进制转换
      十进制转成二进制
      print(bin(123))  # 0b1111011
      十进制转成八进制
      print(oct(123))  # 0o173
      十进制转成十六进制
      print(hex(123))  # 0x7b


     

  • 相关阅读:
    使用TCP
    socket基本
    windows内核原理及实现-----进程线程管理------3.4节中 windows中进程句柄
    windows内核原理及实现-----进程线程管理------3.3节中 windows中进程线程的数据结构
    winDBG用法
    windows调试异常机制
    MYSQL5上运行多个实例
    Mysql双主实战
    Mysql-Proxy使用
    新的旅程
  • 原文地址:https://www.cnblogs.com/-jov/p/13025607.html
Copyright © 2020-2023  润新知