04 2022 档案
摘要:日志作用: 调试 辅助定位问题 数据分析 日志的级别 五种日志级别按从低到高排序: DEBUG < INFO < WARNING < ERROR < CRITICAL 日志的用法: import logging logging.basicConfig(level=logging.DEBUG, for
阅读全文
摘要:什么是正则表达式 正则表达式就是记录文本规则的代码 可以查找操作符合某些复杂规则的字符串 使用场景 处理字符串 处理日志 在 python 中使用正则表达式 把正则表达式作为模式字符串 正则表达式可以使用原生字符串来表示 原生字符串需要在字符串前方加上 r'string' # 匹配字符串是否以 ho
阅读全文
摘要:JSON JSON 是用于存储和交换数据的语法,是一种轻量级的数据交换格式。 使用场景 接口数据传输 序列化 配置文件 JSON 结构 键值对形式 数组形式 { "language": [ { "name": "python", "url": "https://www.python.org/" },
阅读全文
摘要:math函数可以提供很多数学计算的帮助 数字常量: math.pi :圆周率 math.e :自然对数 math.inf :正无穷大,-math.inf 负无穷大 nath.nan:非数字 数论和表示函数:可百度 Python中处理时间的模块: time datetime 常见的时间表示形式: 时间
阅读全文
摘要:读取方法: open() https://zhuanlan.zhihu.com/p/95989702 https://blog.csdn.net/liujingliuxingjiang/article/details/120744826 读操作: read() read(size) #读取指定字符
阅读全文
摘要:sys 概述 是 Python 自带的内置模块 是与 Python 解释器交互的桥梁 sys 使用 常用属性 常用方法 导入 sys 模块 # 导入sys模块 import sys # 查看sys模块帮助文档 help(sys) # 查看sys模块的属性和方法 print(dir(sys)) sys
阅读全文
摘要:os 概述 os: Operating System os 模块的常用功能 跨平台的差异 os 使用 导入 os 模块 查看 os 模块使用文档 help(os) dir(os) import os # 查看os模块说明文档 help(os) # 查看os模块的属性和方法 print(dir(os)
阅读全文
摘要:语法错误:SyntaxError 逻辑错误:实现逻辑有问题 系统错误:由操作系统引起的问题 异常: 执行过程中出现的未知错误,且可以被捕获。 常见异常类型:除零异常,名称异常,索引异常,键异常,值异常,属性异常等 捕获异常: try: <command> except : <command> #if
阅读全文
摘要:python3.5以上才有这个功能。 def greeting(name:str) -> str: #指定name为str类型,返回值为str return 'hello' + nam 好处: 可读性强; 方便调用相关类型方法; 方便静态代码检查; 类型别名 #为类型起别名Vector = List
阅读全文
摘要:内置类装饰器 不用实例化、直接调用 提升代码的可读性 内置装饰器含义 classmethod 类方法 staticmethod 静态方法 普通方法 定义: 第一个参数为self,代表 实例本身 调用: 要有实例化的过程,通过 实例对象.方法名 调用 # 1. 定义 class MethodsDemo
阅读全文
摘要:面向对象是一种编程思想,解决了系统的可维护性,可扩展性,可重用性。 三大特性: 封装 所有设计模式的基础,把共性抽取出来,封装放在一个类中。 继承 子类可以继承父类的方法和属性;如果子类重写父类方法,会直接覆盖父类方法。 ×继承不能乱用,很容易乱套 class B(A) 继承A类的B类 多态 子类有
阅读全文
摘要:什么是面向对象? 面向过程: 一种以过程为中心的变成思想 简单的事情 面向对象: 一种更符合人类思维习惯的编程思想 面向对象开发就是我们不断创建对象,使用对象,操作对象来做事情 复杂的事情(难以找事件过程) 创建一个类别,例如汽车,人类等 语言层面:封装代码和数据 规格层面:对象是一系列可被使用的公
阅读全文
摘要:匿名函数 没有名字的函数 用 lambda 表达式创建匿名函数 使用场景 需要一个函数,但是又不想费神去命名这个函数 通常在这个函数只使用一次的场景下 可以指定短小的回调函数 语法 result:调用 lambda 表达式 [arg1 [, arg2, …. , argn]]:可选,指定要传递的参数
阅读全文
摘要:集合定义 无序的唯一对象集合 用大括号{}包围,对象相互之间使用逗号分隔 集合是动态的,可以随时添加或删除元素 集合是异构的,可以包含不同类型的数据 集合使用:创建 创建 通过使用{}填充元素 通过构造方法 set() 通过集合推导式 """创建集合""" # 1、使用大括号{}填充元素 st4 =
阅读全文
摘要:函数的作用 函数是组织好的,可重复使用的,用来实现单一或相关联功能的代码段 函数能提高应用的模块性和代码的重复利用率 python 内置函数:https://docs.python.org/zh-cn/3.8/library/functions.html 函数定义 def:函数定义关键词 funct
阅读全文
摘要:字典定义 字典是无序的键值对集合 字典用大括号{}包围 每个键/值对之间用一个逗号分隔 各个键与值之间用一个冒号分隔 字典是动态的 字典使用:创建 创建字典 使用大括号填充键值对 通过构造方法 dict() 使用字典推导式 """字典使用:创建""" # 1、使用大括号填充键值对 dc = {'na
阅读全文
摘要:元组定义 元组是有序的不可变对象集合 元组使用小括号包围,各个对象之间使用逗号分隔 元组是异构的,可以包含多种数据类型 元组使用:创建 创建 使用逗号分隔 通过小括号填充元素 通过构造方法 tuple(iterable) # 1、直接使用逗号分隔 t5 = 1, 2, 3 print(type(t5
阅读全文
摘要:list 列表 列表定义 列表是有序的可变元素的集合,使用中括号[]包围,元素之间用逗号分隔 列表是动态的,可以随时扩展和收缩;动态分配内存 列表是异构的,可以同时存放不同类型的对象 列表中允许出现重复元素 列表使用:创建 创建列表 通过构造函数创建 中括号创建并填充 列表推导式 # 1、通过构造函
阅读全文
摘要:分支判断: if 条件判断 # if后面要有判断条件 if 判断条件: # 执行语句需要注意缩进 执行语句 else 判断语句 if 判断条件: # 执行语句需要注意缩进 执行语句 # 注意,无需添加条件 else: 执行语句 elif 多重条件 # elif后面要有判断条件 if 判断条件: #
阅读全文
摘要:算数运算符 运算符描述 + 加 - 减 * 乘 / 除 % 取模 ** 幂 // 取整除 比较运算符 最后输出都是布尔值 运算符描述 == 等于 != 不等于 > 大于 < 小于 >= 大于等于 <= 小于等于 a = 1 b = 2 print(a==b) print(a!=b) print(a>
阅读全文
摘要:乘方:** 取余:% 字符串: 定义: 单行字符串: “this" 多行字符串:"""..........""" \ 转义符 \n :会打印换行 \\n:会打印\n + 多个字符串链接 索引: 可以通过str[index]来找对应字符 -1可以取最后一位 -2可以取倒数第二位 切片:str[begi
阅读全文
摘要:1. 在官网注册账号 2. 配置公钥 github-->我的头像-->settings SSH and GPG keys New SSH key-->把本地的公钥内容配置上去 ×公钥所在地 .ssh 文件名称:id_rsa.pub 3.网页上点击New 创建仓库 4.克隆仓库到本地 复制网址上项目的
阅读全文
摘要:gitlab账号: 需先申请账号和权限 在gitlab配置ssh公钥 git clone xxx 克隆项目到本地 git checkout -b xxx<name> 创建分支 git checkout 切换分支 在gitlab也能通过切换分支看不同分支上的代码 更新代码到本地仓库 git pull
阅读全文
摘要:本人使用linux ubuntu操作 1.官网下载 https://git-scm.com/downloads 因为我是ubuntu,所以使用命令安装 sudo apt-get install git * 安装成功后,使用命令git version查看版本git version 2.17.1 -->
阅读全文
摘要:git 版本控制系统 创建仓库:git init 添加一个新文件readme.txt 提交到临时仓库 git add readme.txt 提交到仓库git commit -m "add 123" 在readme进行修改 查看结果 git status 查看改了什么 git diff 撤销修改: 情
阅读全文
摘要:关系性数据库有以下缺点 存储在硬盘上,读写慢 需保持ACID,难以扩展 (ACID:原子性;一致性;隔离性;持久性) 非关系数据库 Not only SQL 都是以key:value形式存在 可以用在分布式系统 有CAP特性:一致性,可用性,分隔容忍(不能三个特性一起用) 缺点:非标准化语言,有限的
阅读全文
摘要:持续更新: 1.说出10个以上的linux命令: 创建文件:touch 删除文件:rm、rm -f 强制删除、rm -i 互动确认删除、-r 递归删除目录及其内容; 查看文件:cat/less/more /tail -f 实时查看/head -n 20 查看开头20行 复制:cp 源文件 目标文件
阅读全文
摘要:SQL语法执行过程: 客户端-->MySQL server-->存储引擎 索引定义: 索引是一种数据结构 索引包含一个表中列的值,并且这些值存储在一个数据结构中; 好处:提高数据检索效率;减少IO次数;降低CPU能耗;但不能有太多,5个内。 坏处:占用空间,降低更新表的速度,需要花时间研究建立最优秀
阅读全文
摘要:变量的显示与设置: - echo 语法:echo $variable 注意事项: 等号两边不能直接接空格; 可用转义字符'\'将特殊符号($,\,!,空格,回车等)变成一般字符; 增加变量内容可输入:"$variable"或${variable}累加内容,例如 : home="$home"addre
阅读全文
摘要:项目介绍 A公司是一家软件产品销售公司,在北京,上海,深圳,成都,杭州都设有销售部门,其中销售部门分布如下: 北京有3个销售部门,分别为bj001,bj002,bj003 上海有三个销售部门为:sh001,sh002,sh003 深圳有两个销售部门为:sz001,sz002 成都有一个销售部门为:c
阅读全文
摘要:定义:子查询指一个查询语句嵌套在另一个查询语句内部,在SELECT子句中先计算子查询,子查询的结果作为外层另一个查询的过滤条件,查询可以基于一个表或者多个表。 这个特性从MySQL 4.1开始引入。 子查询作为过滤条件时需要用() 包裹 子查询的常见分类 From型子查询:将子查询的结果作为父查询的
阅读全文
摘要:多表查询的定义 定义: 通过查询多张表格获取数据,至少涉及两张表 数据准备: 创建部门表,插入三条数据 创建员工信息表添加外键约束,允许级联删除,并向三个部门插入对应的员工信息 ## 创建部门信息表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREME
阅读全文
摘要:多表关系简介 一对多 定义: 主表的一条记录可以对应从表的多条记录 例子: 部门表,员工表 建表原则:在一对多关系中,多的表定为从表,设置外键指向主表 多对多 定义:主表的多条记录可以对应从表的多条记录 例子:商品信息表,客户表,订单表 建表原则:需要创建第三张表作为中间表,中间表需要包含两张表的主
阅读全文
摘要:外键约束 主键:可以唯一标识一条记录的列 外键:从表中与主表的主键对应的字段 主表:外键所指向的表,约束其他表的表 从表:外键所在的表,被约束的表 价值:建立主表与从表的关联关系,为两个表的数据建立连接,约束两个表中数据的一致性和完整性 建立外键约束 创建表时添加外键约束:CONSTRAINT [外
阅读全文
摘要:多表及应用场景介绍 多表顾名思义就是在数据库设计中使用多张表格来实现数据存储的要求 在实际的项目开发中,数据量大而且复杂,需要分库分表 分表:按照一定的规则,对原有的数据库和表进行拆分 表与表之间可以通过外键建立连接 多表的优点 简化数据,减少冗余; 提高复用性 方便权限控制 提高系统的稳定性和负载
阅读全文
摘要:对表中的数据进行进一步的限制 保证数据的正确性、有效性、完整性 违反约束的不正确数据无法插入到表中 常见的约束 主键:PRIMARY KEY 非空:NOT NULL 唯一:UNIQUE 默认:DEFAULT 外键:FOREIGN KEY 主键约束 主键:一列(或一组列),其值能够唯一标识表中每一行
阅读全文
摘要:聚合函数 COUNT():统计指定列不为 NULL 的记录行数 MAX():计算指定列的最大值 MIN():计算指定列的最小值 SUM():计算指定列的数值和 非数值的运算结果为0 AVG():计算指定列的平均值 聚合查询 语法:SELECT 聚合函数(列名) FROM 表名; -- 查询职级名称为
阅读全文
摘要:数据准备: 1.需导入该测试数据库 测试数据库 https://github.com/datacharmer/test_db 2.赋予权限 cd 数据所在目录 mysql -h 127.0.0.1 -uroot -p < employees.sql 因为我的workbench一直不能用root登录上
阅读全文
摘要:表数据插入语法 INTO 数据表名:指定被操作的数据表 (列名1, 列名2…):可选项,向数据表的指定列插入数据 VALUES(值1, 值2…):需要插入的数据 -- 插入数据 INSERT INTO 数据表名 (列名1, 列名2...) VALUES(值1, 值2...); 完整插入数据 向数据表
阅读全文
摘要:创建表语法 -- 创建表 CREATE TABLE 数据表名 ( 列名1 属性, 列名2 属性… ); 列属性 NOT NULL | NULL:该列是否允许是空值 DEFAULT:表示默认值 AUTO_INCREMENT:表示是否是自动编号 PRIMARY KEY:表示是否为主键 列名 数据类型 [
阅读全文
摘要:MySQL 的数据类型 数字类型(选择够用的类型即可) 数据类型说明 TINTINT 0~255 或 -128~127,1字节,最小的整数 SMALLINT 0~65535 或 -32768~32767,2字节,小型整数 MEDIUMINT 0~16777215 或 -8388608~8388607
阅读全文
摘要:创建数据库语法-- 创建数据库 CREATE {DATABASE|SCHEMA} [IF NOT EXISTS] 数据库名 CHARACTER SET [=] 字符集 IF NOT EXISTS:可选项,创建前先判断,未存在时才执行创建语句 数据库名:必须指定的 CHARACTER SET =字符集
阅读全文
摘要:MySQL 目录结构 安装目录 配置文件:my.ini 文件 数据表目录:data 目录内容 bin 可执行文件 lib 依赖库 docs 文档 include 包含文件 share 存放字符集等信息 表:包含数据库中所有数据的数据库对象 表名:每个表的唯一标识 模式(schema):关于数据库和表
阅读全文
摘要:客户端分两种: WorkBench Navicat WorkBench 安装 官方提供的图形界面交互工具 官网下载:https://dev.mysql.com/downloads/workbench/ linux(ubuntu):https://www.sohu.com/a/332767160_49
阅读全文
摘要:1. windows&MAC系统安装 官方下载:https://dev.mysql.com/downloads/cluster/ 网盘下载 安装步骤:https://ceshiren.com/t/topic/16070 2.配置系统path变量 3.确认MySQL服务是否开启 Windows 系统启
阅读全文
摘要:DBMS:数据库管理系统 分类: 关系型数据库:RDB MySQL,Oracle(收购了MYSQL),SQLite(轻量性,常用在Android),SQLServer 非关系型数据库:NoSQL(没关系约束的数据库) MongoDB, Redis NewSQL 使用场景: 关系型 需要复杂处理数据
阅读全文
摘要:设置path路径 echo $PATH PATH 变量是一个路径列表,以:隔开 如果可执行程序所在的目录在 PATH 变量的路径列表里,那么输入命令时可省略路径 路径列表前面的路径为优先匹配路径,可以用来实现新老版本程序的命令更换 例子 export CHROMEDRIVER_HOME=$HOME/
阅读全文
摘要:curl -x IP address 使用代理 -X GET get请求 -X POST post请求 -d 'xxx'post请求传参 -o file name 保存相应内容到文件 -v 显示通信整个过程 -s 不输出错误和进度信息 jq json提取处理器 练习: manshuo@Dashuo:
阅读全文
摘要:定义和使用变量 var="123" echo $var readonly var -->只读变量 unset var -->删除变量 拼接字符串 greeting="hello,"$yourname"!" 数组 array_name=(value0 value1 value2 value3) 1.取
阅读全文
摘要:进程 问题 统计一个进程的实时cpu数据需要用到哪个命令? top #把ps和top man全看完 ps -ef UID PID PPID C STIME TTY TIME CMDroot 1 0 0 4月12 ? 00:00:14 /lib/systemd/systemd --system --d
阅读全文
摘要:错误输出需要使用以下命令,不然会直接输出到屏幕 ls not_exist_dir > /tmp/output 2>&1将错误输出到文件里
阅读全文
摘要:语法结构: sed[addr][options] 具体看man sed 使用后如果不用w filename保存,则只是显示结果在终端,不会改变源文件内容 w 标记会将匹配后的结果保存到指定文件中,比如: [root@localhost ~]# sed 's/test/trial/w test.txt
阅读全文
摘要:语法: awk 'pattern{action}' awk上下文变量 开始BEGIN 结束END 行数 NR 字段与字段数$1 $2... 整行$0 字段分隔符FS 输出数据的字段分隔符 OFS 记录分隔符 RS 输出字段的行分隔符 ORS 字段变量用法 -F 制定字段分隔符 BEGIN{FS="_
阅读全文
摘要:帮助命令: -- help man 文件管理 查看文件信息:ls -a 显示所有文件,包含隐藏文件 -l 显示详细信息 切换工作目录:cd 显示当前目录路径:pwd 创建新目录:mkdir -p 创建多层目录 创建空文件:touch 删除文件或者目录:rm 拷贝:cp -a 拷贝目录 移动、重命名:
阅读全文
摘要:过滤行数的命令 获取行 获取内容 获取上下文 -A -B -C 递归检索 grep pattern -r dir/ 展示匹配文件名 grep -H 111 /tmp/1 只展示匹配文件名 grep -l 111 /tmp/1 范围约束: 忽略大小写 grep -i pattern file 不显示匹
阅读全文
摘要:排序命令: sort 按第一位字符大小去排列,以此类推 -n 按照数字大小去排列 -r 反序排列 -o filename 排序后的顺序输出到另一个文件 -t (分割符号)-->只能用一个字符分割 eg:-t . -k n 按照第n列去排序 eg: -t . -k 3 -V 按照版本方式去排序 uni
阅读全文
摘要:系统级性能数据分析 常用性能指标: 所有指标都会直接间接影响CPU和mem cpu代表算法的高效性 mem代表数据结构的使用合理性 使用工具平台:系统性分析 promethus grafana CPU使用统计: 列出cpu 基本信息: cat /proc/cpuinfo 系统负载与进程 cpu 占用
阅读全文
摘要:进程与线程 进程 进程包含线程 进程生命周期 线程 进程中被执行的最小单元 CPU调度的基本单位 常用进程管理命令 1. ps 查看进程列表 2.top 交互式进程观测 3. kill 4. fg 进程切换到前台 5. bg 进程切换到后台 6. ctrl z 挂起进程 ps命令: 非交互式,查看进
阅读全文