随笔分类 -  Python

Python日常开发
摘要:一、IO模型介绍 为了更好地了解IO模型,我们需要事先回顾下:同步、异步、阻塞、非阻塞 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能 阅读全文
posted @ 2018-04-03 18:35 lioushell 阅读(217) 评论(0) 推荐(0)
摘要:一、引子 之前我们学习了线程、进程的概念,了解了在操作系统中进程是资源分配的最小单位,线程是CPU调度的最小单位。按道理来说我们已经算是把cpu的利用率提高很多了。但是我们知道无论是创建多进程还是创建多线程来解决问题,都要消耗一定的时间来创建进程、创建线程、以及管理他们之间的切换。 随着我们对于效率 阅读全文
posted @ 2018-04-03 18:34 lioushell 阅读(169) 评论(0) 推荐(0)
摘要:一、操作系统线程理论 (一)、线程概念的引入背景 1、进程 之前我们已经了解了操作系统中进程的概念,程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程。程序和进程的区别就在于:程序是指令的集合,它是进程运行的静态描述文本;进程是程序的一次执行活动,属于 阅读全文
posted @ 2018-03-29 18:57 lioushell 阅读(182) 评论(0) 推荐(0)
摘要:一、什么是进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程 阅读全文
posted @ 2018-03-23 20:17 lioushell 阅读(103) 评论(0) 推荐(0)
摘要:一、手工操作 —— 穿孔卡片 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。 程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数据运行;计算完毕,打印机 阅读全文
posted @ 2018-03-23 19:41 lioushell 阅读(364) 评论(0) 推荐(0)
摘要:一、socket概念 1、socket层 2、理解socket Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织 阅读全文
posted @ 2018-03-20 15:10 lioushell 阅读(320) 评论(0) 推荐(0)
摘要:一、软件开发的架构 我们了解的涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:qq、微信、网盘、优酷这一类是属于需要安装的桌面应用 第二种是web类:比如百度、知乎、博客园等使用浏览器访问就可以直接使用的应用 这些应用的本质其实都是两个程序之间的通讯。而这两个分类又对应了两个软件开发 阅读全文
posted @ 2018-03-19 15:30 lioushell 阅读(177) 评论(0) 推荐(0)
摘要:一、异常和错误 part1:程序中难免出现错误,而错误分成两种 1、语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) #语法错误示范一 if #语法错误示范二 def test: pass #语法错误示范三 print(haha) # 错误信息 # SyntaxE 阅读全文
posted @ 2018-03-15 19:40 lioushell 阅读(151) 评论(0) 推荐(0)
摘要:一、hashlib模块 算法介绍 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。 什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。 摘要算法就是通过摘要函数f()对任意长度的数据d 阅读全文
posted @ 2018-03-14 16:46 lioushell 阅读(155) 评论(0) 推荐(0)
摘要:1、isinstance和issubclass 1)、isinstance(obj,cls)检查是否obj是否是类 cls 的对象 print(obj.__dict__) #由于报错无法执行 class Foo(object): pass obj = Foo() print(isinstance(o 阅读全文
posted @ 2018-03-12 15:51 lioushell 阅读(152) 评论(0) 推荐(0)
摘要:1、定义 【封装】 隐藏对象的属性和实现细节,仅对外提供公共访问方式。 【好处】 1. 将变化隔离; 2. 便于使用; 3. 提高复用性; 4. 提高安全性; 【封装原则】 1. 将不需要对外提供的内容都隐藏起来; 2. 把属性都隐藏,提供公共方法对其访问。 2、私有变量和私有方法 1)、私有变量 阅读全文
posted @ 2018-03-09 18:29 lioushell 阅读(210) 评论(0) 推荐(0)
摘要:面向对象的三大特性是指:封装、继承和多态 一、继承 1.1、继承的定义 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 1.2、python中类的继承分为:单继承和多继承 #定义父类 class ParentClass1: 阅读全文
posted @ 2018-03-07 18:57 lioushell 阅读(426) 评论(0) 推荐(0)
摘要:一、面向过程 VS 面向对象 1、面向过程 核心是过程(流水线思维),过程即解决问题的步骤,即先干什么再干什么......面向过程的设计就好比精心设计好一条流水线,是一种机械式的思维方式。 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可。 缺点是:一套流水线或者流程就是用来 阅读全文
posted @ 2018-03-07 18:43 lioushell 阅读(317) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2018-03-07 18:33 lioushell 阅读(94) 评论(0) 推荐(0)
摘要:一、常用模块 (一)collections模块 在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和OrderedDict等。 1.namedtuple: 生 阅读全文
posted @ 2018-03-07 18:31 lioushell 阅读(249) 评论(0) 推荐(0)
摘要:一、递归函数 1.1、定义 在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。 1.2、递归函数特性 2.1、递归的最大深度——997 递归函数如果不受到外力的阻止会一直执行下去。但是我们之前已经说过关于函数调用的问题,每一次函数调用都会产生一个属于它自己的名称空间 阅读全文
posted @ 2018-02-27 20:49 lioushell 阅读(381) 评论(0) 推荐(0)
摘要:1、定义 匿名函数顾名思义就是指:是指一类无需定义标识符(函数名)的函数或子程序。 2、基本语法 lambda 参数:表达式(返回值) = def func(参数): 表达式(return 值) 3、应用示例 4、在内置函数 max() 求最大值,min()求最小值, map() 映射, reduc 阅读全文
posted @ 2018-02-08 22:28 lioushell 阅读(285) 评论(0) 推荐(0)
摘要:Python3版本所有的内置函数 具体用法,请详查菜鸟教程 内置函数 篇。 以下为方法的介绍 1、 数学运算类 2、集合类操作 3、逻辑判断 4、反射 5、IO操作 6、其他 help()--查看帮助信息 阅读全文
posted @ 2018-02-07 16:58 lioushell 阅读(185) 评论(0) 推荐(0)
摘要:1、列表推导式 公式:[ 变量(加工后的变量) for 变量i in 可迭代的数据类型 ] #例一:求10以内所有的整数(不包括0) list1 = [i for i in range(1,11)] print(list1) #输出结果 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 阅读全文
posted @ 2018-02-07 16:50 lioushell 阅读(237) 评论(0) 推荐(0)
摘要:一、迭代器 1、可迭代对象:可以直接作用于for循环的对象统称为可迭代对象,即Iterable。 常见迭代对象:str、list、tuple、dict、set、range 检测迭代对象的方法: 1)、方法一:dir(被测对象)-- 如果含有__iter__ ,那这个对象就叫做可迭代对象. 2)、方法 阅读全文
posted @ 2018-02-06 16:46 lioushell 阅读(157) 评论(0) 推荐(0)