前端编程基础Html+Css
Html基础
之前自学过不下两三次的HTML,大学也有前端课程,奈何两年没复习过就略有生疏了(额,其实是忘完了!)
我就想怎么能把这个前端给搞定呢,东西实在是忒多了!就有了今天这个笔记,稍稍带有总结的意思!
慢慢来吧!我头发还很多。
HTML中常用的标签常用的※123456789101112131415161718192021<!-- 1、成对出现的标签:--><!--注释方式--><h1>h1标题</h1><div>这是一个div标签</div><p>这个一个段落标签</p><!-- 2、单个出现的标签: --><br> <!--换行--><img src="images/pic.jpg" alt="图片"><hr> <!--在文档中创建一条水平线--><!-- 3、带属性的标签,如src、alt 和 href等都是属性 --><img src=" ...
FineBI食用教程
博客园地址:https://www.cnblogs.com/liam-sliversucks/p/17389178.html
FineBI食用教程FineBI有什么用?通过一个FineBI步骤来了解FineBI到底有什么用!
FineBI 功能模块
这里也是使用FineBI进行数据分析的一般步骤:
数据准备
数据加工(数据处理)
可视化分析(生成各种图表)
仪表板(把各种图表整合在一起)
分享仪表板
总结:FineBI是实现数据报表的工具
FineBI使用教程什么是FineBI
FineBI是一款数据可视化的软件,使用方式就是点点点。(好的,教程结束!/狗头)
其实,FineBI是一款免费的国内软件。图形化界面做的非常优秀,将数据进行可视化展示只需要拖拽,点击就可以轻松实现。
主要是说,以后用到图形化展示的场合肯定很多,用到FineBI也可能会很多,所以就有了这篇文章,方便以后进行再次学习。
如何使用FineBI
基本流程 简单口述一下,从FineBI的右边栏依次向上。
基本图形饼图钻取图柱状图加折线完结详见博客园
Python进阶(Socket编程)
介绍:
面向Socket编程进阶(具体客户端,服务端语法)
使用线程使得服务端服务多个用户
用户之间的通信
面向Socket编程进阶服务端
创建Socket服务端的步骤
创建服务端端套接字对象 创建服务端socket对象 ==>so = socket.socket(AddressFamily, Type)
绑定端口号 bind((host, port)) 表示绑定端口号, host 是 ip 地址,port 是端口号
设置监听 listen (backlog) 表示设置监听,backlog参数表示最大等待建立连接的个数(128)
等待接受客户端的连接请求 accept() 表示等待接受客户端的连接请求
接收数据 recv(buffersize) 表示接收数据, buffersize 是每次接收数据的长度
发送数据 send(data) 表示发送数据,data 是二进制数据
关闭套接字 so.close()
服务端:
1234567891011121314151617import socketif __name ...
Python基础(全)
碎碎念:发现越到后面越显得基础的重要了,比如说有时候发现跟同学问的列表有关的操作,定义列表list1 =list[]删除元素list1.del()和list.remove()的区别竟然都不知道了。del是按照数组元素下标巧记l下标进行删除,remove是根据元素的值进行删除,真的是基础不牢地动山摇啊!最后再补充一些使用的Python的函数使用方法和小技巧吧。
Python中的输入和输出(※)第一种输出方式:
1234name = "老李"age = 18height = 18.2print("我的名字是:%s,年龄是:%d,身高是:%.3f" % (name , age , height))
第二种输出方式:
1print(f'名字是{name},年龄是{age},性别是{gender}')
输入方式:
1234price = float(input("请输入苹果单价:"))weight = float(input("请输入购买的 ...
数据结构之哈希算法
查找
本来是想根据数,二叉树,图,栈,队列,查找,排序总结到一个md文件里面的,但是内容可能会很多就不太方便合起来整理,就先写查找算法吧
哈希查找
是一种时间复杂度为O(1)的一种效率极高的查找方法,与常见的遍历查找不同,哈希算法是通过数组元素数值与哈希表下标构建的一种查找方法,因此我们不需要遍历整个数组,即可对其进行访问。
如果不发生碰撞效率极高,因此设计散列函数也十分重要。如H(key) = (keyx3) MOD 7
哈希算法的特点
1、哈希算法具有特殊的哈希表
2、哈希算法不用遍历即可查找访问目的元素
3、哈希算法基于一个特殊的哈希函数所构建
4、哈希表存在哈希碰撞(哈希冲突)
哈希查找算法之线性探测法
在开放定址算法里,线性探测法是散列解决冲突的一种方法
当hash一个关键字时,发现没有冲突,就保存关键字。
如果出现冲突,则就探测冲突地址下一个地址,依次按照线性查找,直到发现有空地址为止,从而解决冲突。
装填因子
一般情况下,设散列表空间大小为m,填入表中的元素个数是n,则称α=n/m为散列表的装填因子,例如大小为17,元素 ...
Mysql分表操作+Case_When+PyMysql
分表操作为什么要分表,一个表不好吗?
这要从范式说起。
数据库系统概论里面是这样说的:
第一范式(1NF):字段不可分;
第二范式(2NF):有主键,非主键字段依赖主键;
第三范式(3NF):非主键字段不能相互依赖。
可能是我太菜了,看不懂,那就自己总结一下。
1NF(原子性)==> 所有字段不可再分
比如:
姓名
个人信息
张三
12岁,5年级,二班,男
这种就是不符合第一范式的,起码要将年级,班级,年龄,性别分为几个不同的字段。
2NF(唯一性)==> 一个表只能说明一个事物
比如:
学号
姓名
年龄
课程名称
成绩
学分
这个表就不符合第二范式,因为这个表明显说明了两个事务:学生信息, 课程信息。
这个不符合第二范式的表会导致如下问题:
数据冗余:每条记录都含有相同信息,比如课程名称相同,需要占用很多存储空间
删除异常:删除所有学生成绩,就把课程信息全删除了,这种就很难受
插入异常:学生未选课,数据库中的数据不完整会导致插入不进去
更新异常:调整课程学分,所有行都调整
3NF ==> 每列都与主键有直 ...
Python进阶(线程)
Thread线程线程和进程
线程是进程中执行代码的一个分支,每个执行分支(线程)要想工作执行代码需要cpu进行调度,也就是说线程是cpu调度的基本单位,每个进程至少都有一个线程,而这个线程就是我们通常说的主线程。
区别对比
进程之间不共享全局变量
线程之间共享全局变量,但是要注意资源竞争的问题,解决办法: 线程同步
创建进程的资源开销要比创建线程的资源开销要大
进程是操作系统资源分配的基本单位,线程是CPU调度的基本单位
线程不能够独立执行,必须依存在进程中
多进程开发比单进程多线程开发稳定性要强
优缺点对比
进程优缺点:
优点:可以用多核
缺点:资源开销大
线程优缺点:
优点:资源开销小
缺点:不能使用多核
小结
进程和线程都是完成多任务的一种方式
多进程要比多线程消耗的资源多,但是多进程开发比单进程多线程开发稳定性要强,某个进程挂掉不会影响其它进程。
多进程可以使用cpu的多核运行,多线程可以共享全局变量。
线程不能单独执行必须依附在进程里面
线程的参数
线程类Thread参数说明
group: 线程组,目前只能使用None
target: 执行的目标任务名
arg ...
Python进阶(进程)
多任务编程-进程速查手册Process(group,target,name,args,kwargs)
group:指定进程组,目前只能使用None
target:执行的目标任务名
name:进程名字
args:以元组方式给执行任务传参
kwargs: 以字典方式给执行任务传参
Process创建的实例对象的常用方法:
start():启动子进程实例(创建子进程)
join():等待子进程执行结束
terminate():不管任务是否完成,立即终止子进程
Process创建的实例对象的常用属性:
name:当前进程的别名,默认为Process-N,N为从1开始递增的整数
操作方式
导入进程包
import multiprocessing
创建子进程并指定执行的任务
sub_process = multiprocessing.Process (target=任务名, name=”随便起一个名字”)
启动进程执行任务
sub_process.start()
获取当前进程编号
os.getpid()
获取当前父进程编号
os.ge ...
Linux常用命令(进阶)
Linux进阶命令Linux常用高级命令
1
top
查看内存
2
df -h
查看磁盘存储情况(并以人性化方式显示)
3
iotop
查看磁盘IO读写(yum install iotop安装)
4
iotop -o
直接查看比较高的磁盘读写程序
5
netstat -anp(-tunlp) | grep 端口号
查看端口占用情况
6
uptime
查看报告系统运行时长及平均负载
7
ps -aux
查看进程
8
echo
重定向,用于追加内容或者覆盖内容,输出内容到控制台
9
free
查看内存使用情况
10
ln (-s)
创建硬(软)链接
记得链式学习装虚拟机时一定要记住的命令:12345678910111213# 编辑虚拟机的网络vim /etc/sysconfig/network-scripts/ifcfg-ens33# 修改BOOTPROTO="none" # 看这里, 必须是none或者static, 不能是dhcpIPADDR="192.168.88.161"PREFIX=" ...
SQL进阶(多表查询+窗口函数简单使用)
SQL基础语句之多表查询外键约束外键约束的添加方法
假设现在我们有两张表“分类表” 和“商品表”
— category —
cid VARCHAR(32) PRIMARY KEY,
cname VARCHAR(100) #分类名称
12345678- — products— - ```sql pid VARCHAR(32) PRIMARY KEY, name VARCHAR(40), price DOUBLE, category_id VARCHAR(32),
在创表语句后添加:CONSTRAINT FOREIGN KEY (外键字段) REFERENCES 主表名(主键)
category分类表,为唯一方,也就是主表,必须提供主键cid
products商品表,为多方,也就是从表,必须提供外键category_id
外键约束检测外键约束的优点
==在插入数据时,保证了数据的准确性==
1234567INSERT INTO category (cid ...