自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 Asyncio

asyncioasyncio底层基于selectors实现,看似库,其实就是个框架,包含异步IO、事件循环、协程、任务等内容。多线程版本import threadingimport timedef a(): for i in range(3): time.sleep(0.2) print(i) def b(): for...

2019-11-01 14:56:07 336

原创 高并发解决方案

并发的解决1、队列、缓冲区队列是天然解决高并发的手段之一,通常我们叫buffer,作用是解耦、缓冲。例如:queue模块的类Queue、LifoQueue、PriorityQuueue(小顶堆实现,优先队列)queue默认是先进先出,但它的问题是后面的任务是否能等到前面的任务完成。优先队列 PriorityQueue对于自己写的程序,如果你有大量的请求需要自己来解决,用队列将这些请求装...

2019-11-01 14:54:38 175

原创 ORM

ORMORM,对象关系映射,对象和关系之间的映射,使用面向对象的方式来操作数据库。关系模型和Python对象之间的映射table => class ,表映射为类row => object ,行映射为实例column => property ,字段映射为属性SQLALchemySQLALchemy是一个ORM框架安装pip install sqla...

2019-11-01 11:44:53 161

原创 UDP编程

UDP服务端编程流程创建socket对象。socket.SOCK_DGRAM绑定IP和Port,bind()方法传输数据接收数据,socket.recvfrom(bufsize[,flags]),获得一个二元组(string, address)发送数据,socket.sendto(string, address)发给某地址某信息释放资源import socketserv...

2019-11-01 11:39:52 102

原创 网络编程

Socket介绍协议族AF表示Address Family,用于socket()第一个参数名称含义AF_INETIPV4AF_INET6IPV6AF_UNIXUnix Domain Socket, windows没有Socket类型名称含义SOCK_STREAM面向连接的流套接字。默认值,TCP协议SOCK_DGRAM...

2019-11-01 11:37:42 584

原创 MySQL知识

MySQL存储引擎什么是存储引擎?数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。提示:InnoDB事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。MySQL5.5之后,InnoDB作为默认存储引擎。MyISAM是基于I...

2019-11-01 11:35:02 76

原创 GIL全局解释器锁

数据结构和GILQueue类是线程安全的,适用于多线程间安全的交换数据。内部使用了Lock和Condition。Queue类的size虽然加了锁,但是,依然不能保证立即get、put就能成功,因为读取大小和get、put方法是分开的。import queueq = queue.Queue(8)if q.qsize() == 7: q.put() # 上下两句可能被打断 ...

2019-11-01 11:32:52 55

原创 python生成器函数

生成器(三星重点)生成器指的是生成器对象,可以由生成器表达式得到,也可以使用yield关键字得到一个生成器函数,调用这个函数得到一个生成器对象生成器对象,是一个可迭代对象,是一个迭代器生成器对象,是延迟计算、惰性求值的生成器函数函数体中包含yield语句的函数,就是生成器函数,调用后返回生成器对象m = (i for i in range(5))print(ty...

2019-04-21 22:52:40 165

原创 python匿名函数 - lambda

匿名函数匿名函数:没有名字的函数Lambda表达式Python中,使用Lambda表达式构建匿名函数lambda x : x ** 2(lambda x : x ** 2)(4)foo = lambda x,y : (x+y) ** 2 #不推荐不如直接定义函数foo(1,2)#等价于def foo(x,y): return (x+y) ** 2foo(1,2)...

2019-04-21 22:50:50 88

原创 python递归函数

递归函数函数执行流程def foo1(b,b1=3): print("foo1 called",b,b1)def foo2(c): foo3(c) print("foo2 called",c)def foo3(d): print("foo3 called",d)def main(): print("main called") foo...

2019-04-21 22:50:27 51

原创 python 函数Function

函数Function数学定义y = f(x),y是x的函数,x是自变量。Python函数由若干语句组成的语句块、函数名称、参数列表构成,它是组织代码的最小单元。完成一定功能函数的作用结构化编程对代码的最基本封装,一般按照功能组织一段代码封装的目的为了复用,减少冗余代码代码更加简洁美观、可读易懂函数的分类内建函数,如max()、min()、...

2019-04-14 12:31:22 1396

原创 python 解析式生成式

列表解析List Comprehension语法[返回值 for 元素 in 可迭代对象 if 条件]使用中括号[],内部是for循环,if条件语句可选返回一个新的列表列表解析式是一种语法糖编译器会优化,不会因为简写而影响效率,反而因优化提高了效率减少程序员工作量,减少出错简化了代码,但可读性增强even = []for x in range(...

2019-04-14 12:22:34 109

原创 python 字典Dict

字典Dictkey-value键值对的数据的集合可变的、无序的、key不重复字典dict定义、初始化d = dict() 或者d = {}dict(**kwargs) 使用name=value对初始化一个字典dict(iterable, **kwarg) 使用可迭代对象和name=value对构造字典,不过可迭代对象的元素必须是一个二元结构(可迭代对象的元素...

2019-04-14 12:19:38 179

原创 python基础语法

1. Python 基础语法一、编程基础程序一组能让计算机识别和执行的指令电子计算机能够执行程序的机器现代计算机艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家,被称为计算机科学之父,人工智能之父。图灵提出的著名的图灵机模型为现代计算机的逻辑工作方式奠定了基础冯·诺依曼著名匈牙...

2019-03-31 22:31:25 357

原创 Linux软件管理

Linux 软件管理包管理器二进制应用程序的组成部分:二进制文件、库文件、配置文件、帮助文件 程序包管理器:debian:deb文件, dpkg包管理器redhat: rpm文件, rpm包管理器rpm: Redhat Package ManagerRPM Package Manager包管理器工具包之间:可能存在依赖关系,甚至循环依赖解决依赖包管理工...

2019-03-25 00:47:20 391

原创 python journey

Python JourneySet Flag不抱幻想,不心存侥幸,唯有努力才是出路!

2019-03-24 23:06:00 536

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除