- 博客(19)
- 收藏
- 关注
原创 B树索引 hash索引
索引索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。对于一个表中几百万行数据来说,如果不使用索引,每次查找都需要遍历一遍所有的行,从而找到所需要的数据,平均查找效率O(n)。如果使用了索引,在查找时会先找索引,快速定位到磁盘位置,然后再去读出该行的数据,效率大大提升。建立索引的规则:1、利用最左前缀:Mysql会一直向右查找直到遇到范围操作(&g...
2019-03-29 11:20:10 291
原创 python协程 02/28
协程协程,又称微线程,纤程。英文名Coroutine。协程是程序级别的由程序根据需要自己调度。在一个线程中会有很多函数,我们把这些函数称为子程序,在子程序执行过程中可以中断去执行别的子程序,而别的子程序也可以中断回来继续执行之前的子程序,这个过程就称为协程。也就是说在同一线程内一段代码在执行过程中会中断然后跳转执行别的代码,接着在之前中断的地方继续开始执行,类似与yield操作。协程拥有自己...
2019-02-28 16:07:29 157
原创 python多进程 02/27
多进程多进程:在多个CPU运行多进程实现方式:函数式,继承式multiprocessing模块:multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数)multiprocessing模块的功能众多:支持子进程、通信和共享数据、执行不同形式的同步,提供了Process、Queue、Pipe、Lock等组件。需要再次强调的一点是:与线程不同,进程没有任...
2019-02-28 15:52:24 126
原创 python多线程(2) 02/26
join,daemonjoin将其他线程(主线程)挂起,待当前线程结束后,在继续执行挂起主线程daemon守护线程,主线程结束,守护线程被迫停止import threading,timedef run(): for i in range(100): time.sleep(0.1) print("子线程结束")t1 = threading.Thread(ta...
2019-02-26 11:23:12 151
原创 python多线程 02/25
多线程程序:代码指令集合进程:程序的执行过程线程:一个进程之内的多个并行任务。指令执行的最小单位(进程包含线程)线程安全 慢 同步非线程安全(线程不安全) 快 异步线程的状态(生命周期)创建状态---->就绪状态----->运行状态---->死亡状态-挂起状态-\#函数式import ...
2019-02-25 16:21:23 123
原创 with资源释放 文件基本操作 持久化 02/22
with资源释放with open("a1.txt",encoding="utf-8") as f:#释放资源 print(f.read()) print(1 / 0)#工作原理class demo(): def __enter__(self): print("进入enter方法") return "你好" def __exi...
2019-02-22 16:03:30 211
原创 树 02/18
树的实现class TreeNode(): def __init__(self,data,firstchild,nextSibling): self.data = data self.firstchild = firstchild self.nextSibling = nextSibling树的遍历深度优先广度优先#遍历(深度优先...
2019-02-21 16:10:53 96
原创 编码 流 I/O 02/21
编码明文------>(编码)暗文暗文------>(解码)明文ASCII(0-127,8位)ANSI(拉丁文,8位)GB2312(前八位和后八位都大于127,16位,表示汉字)GBK(前八位大于127,16位)(GB2312七千加两万)UNICODE(国际,16位,浪费空间,头是两字节)UTF-8(24位,省空间,ASCII算8位,头是三字节)py2中string ...
2019-02-21 15:25:11 143
原创 字典 02/20
字典表达方式:{ }存储方式(键值)—— key:value为什么有键?确定树键值可以是字符串,数字,元组,不能是列表键值不能相同,如果相同则被覆盖value值的类型:没有限制操作:增删改查b = {"name":"林徽因","age":15,"sex":"男"}b["tel"] = 183#增b["tel"] = 139del b["t
2019-02-20 16:18:03 99
原创 数据结构(3)队列及栈实现后缀表达式 01/28
队列#普通队列class myQuene(object): def __init__(self,list=[]): self.__list = list def size(self): return len(self.__list) def __delete__(self): if self.size == 0: ...
2019-01-28 16:23:36 248
原创 数据结构(2)双向链表及栈 01/26
双向链表双向链表next:后继pre:前驱#双链表操作class NullLinkedError(BaseException): def __init__(self): super().__init__("null linked error")class node(): #content:创建节点,表示链表中元素,有三个属性, # ...
2019-01-28 16:18:14 103
原创 数据结构(1)线性表及链表 01/25
抽象数据类型抽象数据类型 ADT :拥有属性和方法,属性可以存储数据,方法操作属性线性表class myList(): def __init__(self,element): self.__element = element def delete(self): del self.__element def set_element(sel...
2019-01-25 20:17:59 97
原创 python面向对象(2) 01/22
多态多态:多种形态 (继承-重写)class animal(): def eat(self): print("吃饭")class person(): def eat(self): print("吃大米饭")class dog(animal): def eat(self): print("吃骨头")c
2019-01-24 14:22:52 139
原创 python 异常和抽象类 01/24
错误错误:语法错误,逻辑错误异常异常:程序执行过程中出现问题导致程序无法执行常见异常BaseException 所有异常的基类SystemExit 解释器请求退出KeyboardInterrupt 用户中断执行(通常是输入^C)Exception 常规错误的基类StopIteration 迭代器没有更多的值GeneratorExit 生成器(generator)发生异常来通知退...
2019-01-24 14:22:32 177
原创 python循环和列表介绍 01/15
循环for循环:for 变量 in range(起点,终点,步长):循环体#输入三个数,如果其中有一个值大于1000,则提示,输入的数值有大于1000的。for i in range(3): a = int(input("请输入一个数")) if a>1000: print("有大于1000 的") break运行结果:#1+2...
2019-01-21 21:07:12 456
原创 python 类和面向对象(1) 01/21
编程语言的发展编程语言的发展:机器语言,汇编语言,高级语言(面向过程 C语言),面向对象(C++ Java python)类类:对具有相同属性和方法的抽象对象对象:具有属性和方法的实物面向对象的三大特性:继承,封装,多态class person(): def __init__(self,name,age,sex,heigth):#__init__构造对象的函数 ...
2019-01-21 16:29:46 116
原创 初识python(注释,数据类型,标识符和关键字,运算符,分支语句等)01/14
注释:解释代码#单行注释''' 多行注释 '''""" 多行注释 """数据类型整数类型:int(没有上限)浮点类型:float(没有限制) 例如:3.14字符串类型:str 例如:“你好” ‘nihao’布尔类型:bool 返回值为True 或 False列表:list元组:tuple字典复数:complex类型转换:如字符串转整数:int(str)...
2019-01-20 13:45:38 550
原创 python字符串 01/19
字符串字符串截取s = "Hello"print(s[0:3])#截取从0到2,不包括3print(s[:])#截取全部print(s[::-1])#倒置运算结果:HelHelloolleH去空格s = " Hello "print(s.strip())#去左右空格print(s.lstrip())#去左空格print(s.rstrip())#去右空格运行结果:..
2019-01-20 13:14:21 185
原创 python实现图书管理系统 01/18
**图书管理系统**用户登录(密码加密)def login(username,password): book = xlrd.open_workbook("book.xls") sheet = book.sheet_by_name("user") #获取行,列 r = she
2019-01-18 16:25:23 2110 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人