zoukankan      html  css  js  c++  java
  • 知识点小总结

    day01

    1. 变量:7
    2. 常量:变量名全部大写
    3. 注释:单行注释 # ,多行注释""" """
    4. 基础数据类型
      • str:python中只要是引号引起来的就是字符串,加法同类型,乘法和数字相乘 单双引号配合使用
      • int:用于计算和比较
      • bool:用于判断
    5. input()---输入,获取的都是字符串/print()--输出,打印内容
    6. 流程控制:if , if else ,if elif elif else,if elif elif ,if if if ,if嵌套
    7. type

    day02

    1. 死循环:while True while else
    2. break 终止循环
    3. continue -结束本次循环,继续下次循环
    4. 字符串格式化 %s --填充字符串,%d %i --- 数字, %%==% --转义
    5. f"{}"3.6以上版本才能使用
    6. 运算符
      • 算术运算符 + - * / ** %
      • 比较运算符 > < >= <= == !=
      • 赋值运算符 += -= * = / = **= %=
      • 逻辑运算符:
        • and 都为真去后面,都假去前边,一真一假选假的
        • or 都为假 选后边,都为真选前前边,一真一假选真的
        • not 相反
        • () >not >and >or
      • 成员 in ,not in
    7. 编码
      • ascci 没有中文
      • gbk 英文1字节 中文2字节
      • unicode 英文2字节 中文4字节
      • utf-8 英文1字节 欧文2字节 亚文3字节
    8. 1B(字节)=8b(位)

    day03

    1. 整型

      • 十转二bin
      • 二转十int
    2. 字符串详解

      ​ 索引 切片 步长

      • upper大写
      • lower小写
      • startswith什么开头
      • endswith什么结尾
      • count计数
      • strip 脱
      • split 切
      • repace 替换
      • isdecimal 十进制
      • isdigit 阿拉伯
      • isalanum 字母中文数字
      • isalpha 字母中文
    3. len

    4. for 循环 pass

    5. 非可迭代对象 int bool

    day04

    1. list 列表-- 存储大量数据(不同类型)
      • 增 append insert extend
      • 删 pop remove del clear
      • 改 索引 切片(任意长度不报错) 步长(一一对应)
      • 查 for
    2. 元组 tuple 元组就是一个不可变的列表 index count for
    3. range() range(起始位置,终止位置,步长)顾头不顾尾
    4. py2 和 p3的区别
      • p2:range(1,10) --列表
      • p3:range(1,10)--可迭代对象

    day05

    1. dict 字典
      • 键:不可变
      • 值:任意数据
    2. 增删改查
      • 增 dic["键"]= 值 setdefault
      • 删 pop clear del popitem--随机删除
      • 改 update(字典)
      • 查setdefault("键") get(键)
    3. 解构 一行换元素数据 a,b =b,a

    day06

    1. 小数据池: 整型 字符串 bool
      • 整数 -5 ~256 python3.7 :-5~4096
      • 字符串:乘法总长度不超过20
    2. 代码块 -- 一个模块(文件)\函数\类\终端中的每一行
      • 整型 字符串 bool
      • 整数 -5 ~正无穷
      • 字符串:乘法总长度不超过20
    3. is 判断内存地址是否相同 ,==判断两边的值是否相同
    4. 深浅拷贝
      • 赋值: 多个变量名指向同一内存地址 ,修改就会全部改变
      • 浅拷贝:只拷贝第一层,修改第一层不改变
      • 深拷贝:不可变数据类型共用一块内存地址,可变数据类型不换嵌套多少层都会开辟新的内存空间
    5. 集合 set()天然去重 没有值的字典
      • 增 add uppdate(迭代添加)
      • 删 pop remove clear del
      • 改 先删后加
      • 查 for

    day07

    1. 数据类型补充:
      • str:
        • capitalize
        • title
        • swapcase
        • center
        • find -1
        • index 找不着报错
        • join
        • str.format()格式化
      • list
        • 列表相加生成新列表
        • 列表乘数字 共用一块地址
        • sort
        • reverse
      • tuple 可加 可乘乘法共用一块地址
      • dict
        • dict(a=1,b=2)
        • fromkeys迭代添加 需要接受
      • 坑 lst = [1,2,3,4,4]从后向前删,或者copy新的列表
      • 字典和集合 迭代的时候不能改变原数据的大小
    2. 二次编码
      • encode编码
      • decode解码

    day08

    1. 文件操作
      • r w a
      • r+ w+ a+
      • rb wb ab
    2. open
    3. f.read#指定字节或字符 close readline readlines seek--按字节移动
    4. 绝对路径 相对路径
    5. with open 同时打开 操作多个文件

    day09

    1. 函数初始:

      • 函数定义 def 函数名():

        ​ 函数体

      • 函数调用 函数名+()

      • return 终止函数 返回值(单个任意数据类型,多个以元组形式)不写和写了没写值 返回None return下方代码不执行 可以写多个但是只执行一个

    2. 参数

      • 形参:函数定义阶段括号中的值是形参,位置参数>动态位置参数>默认参数()>动态关键字参数
      • 实参:在函数调用阶段括号中的是实参位置参数(一一对应) > 默认参数(可写可不写,写了就覆盖)
      • 传参:将实参传递给形参的过程

    day10

    1. 动态参数: *args,**kwargs--万能传参
    2. 优先级 位置>动态位置>默认>动态关键字
    3. 函数的注释
    4. 查看注释 函数名.__doc__
    5. 查看函数名 函数名.__name__
    6. 名称空间
      1. 内置空间:python解释器自带的
      2. 局部空间:当前py文件中的
      3. 全局空间:函数体中
    7. 作用域
      1. 全局:作用域 内置空间+全局空间
      2. 局部作用域:局部做空间
    8. 函数的嵌套 一层套一层
      1. global---只修改全局变量
      2. nonlocal--只修改局部,修改离他最近的一层
    9. 三元运算符 条件成立的结果 条件 条件不成立的结果

    day11

    1. 函数名的第一类对象及使用
      1. 函数名的可当作值赋值给变量
      2. 可以当作元素放在容器中
      3. 可以当作另一个函数的参数
      4. 可以当作函数的返回值
    2. 可迭代对象 :具有__iter__()方法的就是可迭代对象
    3. 迭代器:具有__iter__()和__next__()方法的就是迭代器 一次性的
    4. for的本质 用while循环
    5. 迭代器优点:节省内存,惰性机制 缺点:不能逆行,不能灵活使用,不能直接查看元素
    6. 递归 自己不断调用自己本身,有明确的终止条件,----一递一归

    day12

    1. 生成器,本质是迭代器

    2. 生成器和迭代器的区别;

      1. 生成器是程序员所写的
      2. 迭代器python自己写的
    3. 在函数内将return 换成yield func()--生成一个生成器

    4. 生成一个生成器的时候赋值给一个变量,再往后迭代

    5. yield from 吧可迭代对象中的元素逐个的返回

    6. for 循环进行取值

    7. 推导式

      1. list [变量 for循环 加工条件]
      2. 生成器表达式 ( 变量 for循环 加工条件)
      3. 字典dict {键:值 for循环 加工条件}
      4. 集合set{键 for循环 加工条件}
    8. 内置函数一(了解)

      1. eval

      2. exec

      3. hash

      4. help

      5. callable

      6. int

      7. float

      8. complex

      9. bin

      10. oct

      11. hex

      12. divmod

      13. round

      14. pow

      15. bytes

      16. ord

      17. chr

      18. repr

      19. all

      20. any

      21. globals

      22. locals

    day13

    1. 内置函数二 filter sorted reversed map zip print max min reduce (lambda x:x)( 实参)

      1. abs

      2. enumerate

      3. max

      4. min

      5. sum

      6. open

      7. print

      8. len

      9. list

      10. dict

      11. tuple

      12. type

      13. zip

      14. dir

      15. lambda

      16. format

      17. filter

      18. reversed

      19. sorted

      20. map

      21. reduce

    2. 闭包 在一个嵌套函数内使用非全局变量且不是本层变量就是闭包

    day14

    1. 装饰器: 本质是闭包 开放封闭原则 在不修改源代码和调用方式的前提下,增加额外的功能

    day15

    1. 带参数的装饰器

      在装饰器的基础上在套一层 @auth(参数)

    2. 多个装饰器修饰一个函数

      先执行离被装饰函数最近的语法糖

      小技巧:进入装饰器从上向下,走到最后一个装饰器执行被装饰的函数,退出从下往上

  • 相关阅读:
    Git提交错了不用慌,这三招帮你修改记录
    codeforces 1443D,解法简单,思维缜密的动态规划问题
    为什么优秀的人总是少数?我从天文学当中获得了一些启示
    本科入行可能吗?做到这3点,斩获BAT offer不是梦
    裸考了一次雅思,我居然学会了数据分析!
    有了Git这个功能,再也不需要依赖IDE了!
    职场中究竟什么是ownership,你是一个有ownership的人吗?
    为何跳槽不考虑腾讯?聊聊我和鹅厂的一点往事
    【Azure DevOps系列】Azure DevOps EFCore命令式脚本部署到SQL数据库
    Linux查看、开启、关闭防火墙操作
  • 原文地址:https://www.cnblogs.com/ciquankun/p/11237536.html
Copyright © 2011-2022 走看看