07 2018 档案
摘要:回顾 列表 无序列表 ul li 有序列表 ol li 定义列表 dl dt dd 相关css属性 list-style list-style-type list-style-image list-style-position 无序列表 ul li 有序列表 ol li 定义列表 dl dt dd
阅读全文
摘要:display:inline、block、inline-block的区别 display:inline、block、inline-block的区别 display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始; 高度,行高以及顶和底边距都可控制; 宽度缺省是它的容
阅读全文
摘要:上节课回顾: HTML标签: 格式排版 p 段落 双br 换行 单hr 分隔线 单h1~h6 标题 双pre 原样格式化输出 双div 标签,无任何特殊意义 HTML标签 :文本 <em> 强调 倾斜 双<ruby></ruby> 加拼音 <rt></rt> <strong> 加粗 强调 双<mar
阅读全文
摘要:1.CSS使用 link 引入外部的CSS文件 <link rel="stylesheet" type="text/css" href="./style.css"> <style></style> 在html中写 <style> p { color:red } </style> 使用html元素的s
阅读全文
摘要:1.1 什么是HTML HTML是用来制作网页的标记语言 HTML是Hypertext Markup Language的英文缩写,即超文本标记语言 HTML语言是一种标记语言,不需要编译,直接由浏览器执行 HTML文件是一个文本文件,包含了一些HTML元素,标签等 HTML文件必须使用.html或.
阅读全文
摘要:markdown快捷键 SHIFT CTRL - H [ ] task haroopad mathmath
阅读全文
摘要:索引介绍 一:为什么要有索引 索引是用来优化查询效率(速度)的 没有索引的话,对于大数据的表,就只能每次都遍历一遍,数据量越大,耗时越多有索引的话,可以提升好几个数量级的速度 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容
阅读全文
摘要:+ +| Tables_in_dapeng3 |+ +| class || course || s1 || score || student || teacher |+ +6 rows in set (0.00 sec) mysql> select * from class;+ + +| id |
阅读全文
摘要:1 CREATE TABLE cmd ( 2 id INT PRIMARY KEY auto_increment, 3 USER CHAR (32), 4 priv CHAR (10), 5 cmd CHAR (64), 6 sub_time datetime, # 提交时间 7 success e
阅读全文
摘要:上课笔记 1 import pymysql 2 3 # 首先要建立和数据库的链接 4 client=pymysql.connect( 5 host='127.0.0.1', 6 port=3306, 7 user='root', 8 password='egon123', 9 database='d
阅读全文
摘要:1 #mysql数据库改名,官方没有直接修改数据库名称的命令 2 #只有通过修改表名方式实现 3 4 source /etc/profile #加载系统环境变量 5 source ~/.bash_profile #加载用户环境变量 6 set -o nounset #引用未初始化变量时退出 7 8
阅读全文
摘要:1、跟权限有关的几张表user->db->table_priv->columns_priv 2、只创建账号create user tom@"客户端的ip" identified by "123";create user tom@"192.168.15.%" identified by "123";c
阅读全文
摘要:1.什么是爬虫? 请求网站并提取数据的自动化程序 请求:客户端向服务端发送请求获得网页资源,是一段html代码,包含html标签和一段信息。 提取:提取出想要的信息,然后将结构化的数据存储到文本 自动化:写完程序一直运行着,代替客户端向服务端发送请求,可以大量的获得数据 爬虫四部 1.发起请求:通过
阅读全文
摘要:1.安装好前期必备的库 - requests 向网页发出请求 解释器自带的urllib 和re selenium 用于向有js渲染的网页发起请求 from selenium import webdriver driver = webdriver.Chrome() # 生成一个driver对象,并打开
阅读全文
摘要:一、创建表的完整语法#语法:create table 库名.表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件]);约束条件:是在数据类型之外对字段附加的额外的限制#注意:1、最后一个字段之后不能加逗号2. 在同一张表中,字段名
阅读全文
摘要:破解密码 #1、关闭mysqlnet stop mysqlmysql还在运行时需要输入命令关闭,也可以手动去服务关闭 #2、重新启动mysqld --skip-grant-tables跳过权限 #3mysql -uroot -p 直接登陆 update mysql.user set password
阅读全文
摘要:1.mysql下载安装 在官网下载5.6版本(越老稳定性越好,现在公司一般都用5.6),选择windows,64bit 。下载完解压看bin目录下是否有mysql·exe和mysqld.exe。 解压完成其实已经安装完成了(将别人的软件下载下来就是安装完成了),exe功能是将文件拷贝到硬盘。 2.m
阅读全文
摘要:多路复用I/O 它的基本原理就是select/epoll这个function会不断的轮询所负责的所有socket,当某个socket有数据到达了,就通知用户进程。 流程图如下: 当用户进程调用了select,那么整个进程会被block,而同时,kernel会“监视”所有select负责的socket
阅读全文
摘要:1 from gevent import monkey,spawn;monkey.patch_all() 2 from threading import current_thread 3 import time 4 # 实现了单线程下的并发,遇到i/O就切换 5 def eat(): 6 print
阅读全文
摘要:1.定时器 指定n秒后,执行任务 1 from threading import Timer,current_thread 2 import os 3 4 5 def hello(): 6 print("%s hello, world"%os.getpid()) 7 print("%s hello,
阅读全文
摘要:流程:因为是在同一个进程内,所以他的数据是共享的。线程申请GIL,开始执行python解释器的代码,解释器发送开启线程的请求给操作系统,操作系统 开启线程,并给线程分配cpu,开始执行线程里的代码,如果代码本身也有互斥锁,第一个获得GIL的线程先进入内部的互斥锁,执行里面的代码,如果遇到I/O 或者
阅读全文
摘要:from threading import Thread,current_thread import time def task(): print('%s is running' % current_thread().name) time.sleep(3) print('%s is done' %
阅读全文
摘要:方式一:导入Thread模块 from threading import Thread import time def task(name): print('%s is running' %name) time.sleep(3) if __name__ == '__main__': t=Thread
阅读全文
摘要:from multiprocessing import Queue,Process import time import os import random # 两个子进程,一个生产一个消费,一个把生产的全放进队列里,最后添加个None。一个从创造好的队列取出数据, # 直到取出最后一个数据,循环结束
阅读全文
摘要:进程间通信的两种实现方式(IPC) IPC: iter processing communicate from multiprocessing import Queue q=Queue(3) #先进先出 #注意: #1、队列占用的是内存空间 #2、不应该往队列中放大数据,应该只存放数据量较小的消息
阅读全文
摘要:from multiprocessing import Process import time import os def task(): print('%s is running' %os.getpid()) time.sleep(3) print('%s is done' % os.getpid
阅读全文
摘要:子进程的出现是为了实现并发 from multiprocessing import Process import time x=100 def task(): global x x=0 print('done') # 父进程在等待的时间内子进程执行完了,打印出“done” if __name__ =
阅读全文
摘要:进程理论(book:现代操作系统) 为何开启子进程需要放在main下面:因为运行到start他会向操作系统发起启动子进程的信号,然后操作系统会把整个代码块执行下,找到子进程要执行的任务, 代码运行到最下面,又执行了start,又重复执行一次。线程可以不放在main下面是因为线程不用导入主线程里的东西
阅读全文
摘要:1、多道技术的实现是为了解决多个程序竞争或者说共享同一个资源(比如cpu)的有序调度问题, 解决方式即多路复用,多路复用分为时间上的复用和空间上的复用。 优点: 程序员在申请的时间段内独享整个资源,可以即时地调试自己的程序(有bug可以立刻处理) 缺点: 浪费计算机资源,一个时间段内只有一个人用。
阅读全文
摘要:基于tcp协议 import socketserver # 导入socketserver模块 # socketsever 把并发进程的方法封装 class MyHandler(socketserver.BaseRequestHandler): # 定义一个类,继承父类BaseRequestHandl
阅读全文
摘要:udp协议的套接字 udp协议传输 服务端和客户端没有建立连接一说。 import socket # 总结一下基础工作流程:服务端生成套接字并绑定ip_port,进入数据传输循环,服务端接受客户端发送的信息和地址, # 然后服务端对客户端请求做出响应,发送处理好的数据根据而客户端地址。 # 客户端建
阅读全文
摘要:粘包产生的原因分析: 第一点:客户端向服务端发起命令请求,服务端接受命令请求,并返回对应的信息,如果信息过大,客户端一次接受不了,那么下一次请求依然返回 上一个命令的内容,就出现了粘包的情况。 第二点:发送端需要等缓冲区满才发送出去,造成粘包(发送数据时间间隔很短,数据了很小,会合到一起,产生粘包)
阅读全文
摘要:1.socket(套接字) Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。 2.套接字
阅读全文
摘要:1 C/S 架构 B/S架构 client < — 基于网络通信 —> sever browser <—基于网络通信—>sever 客户端<—基于网络通信—>sever 2 sever端(服务端)必须满足的条件: 1.稳定运行(网络,硬件,操作系统,服务端应用软件),对外一直提供服务。 2.服务端必
阅读全文
摘要:1.什么是单例模式? 基于某种方式是实例化多次得到的实例是同一个。 2.为何用单例模式? 当实例化多次得到的对象中存放的属性都是一样的情况,应该将多个对象指向同一个内存,即同一个实例。节省内存。 不能解决删除单个对象的问题。在提供内存管理的语言中(例如基于.NET Framework的语言),只有单
阅读全文
摘要:在元类中对创建的类进行属性隐藏 通过控制对象的__dict__属性格式从而对属性进行隐藏。在外面访问属性需要访问隐藏属性格式。
阅读全文
摘要:作者:权循真链接:https://www.zhihu.com/question/19754941/answer/12860775来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 首先是单下划线开头,这个被常用于模块中,在一个模块中以单下划线开头的变量和函数被默认当作内部
阅读全文
摘要:1.什么是元类? 在python中,一切皆对象,所以由class关键字定义的类本身也是一个对象,负责产生该对象的类称为元类,即元类可以简称为类的类。 2.为什么要用元类? 元类是负责产生类的,所以我们学习元类或自定义元类的目的是为了控制类的产生过程,还可以控制对象的产生过程。 在之前先掌握内置函数e
阅读全文
浙公网安备 33010602011771号