08 2017 档案

摘要:一,concurent.furtrue进程池和线程池 1.1 concurent.furtrue 开启进程,多进程&线程,多线程 1.2 concurrent.futures map方法 1.3 concurrent.futures 爬网页例子 二,协程 一 引子 本节的主题是基于单线程来实现并发, 阅读全文
posted @ 2017-08-31 20:51 liqianlong 阅读(487) 评论(0) 推荐(0) 编辑
摘要:一 死锁现象与递归锁 进程也有死锁与递归锁,在进程那里忘记说了,放到这里一切说了额 所谓死锁: 是指两个或两个以上的进程或线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程,如下就是 阅读全文
posted @ 2017-08-31 20:12 liqianlong 阅读(664) 评论(0) 推荐(0) 编辑
摘要:一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 官网链接:https://docs.python.org/3/library/threading.html?highlight=threading# 阅读全文
posted @ 2017-08-31 20:05 liqianlong 阅读(7739) 评论(0) 推荐(4) 编辑
摘要:一,共享数据 展望未来,基于消息传递的并发编程是大势所趋 即便是使用线程,推荐做法也是将程序设计为大量独立的线程集合 通过消息队列交换数据。这样极大地减少了对使用锁定和其他同步手段的需求, 还可以扩展到分布式系统中 进程间通信应该尽量避免使用本节所讲的共享数据的方式 from multiproces 阅读全文
posted @ 2017-08-30 19:21 liqianlong 阅读(5860) 评论(0) 推荐(0) 编辑
摘要:一,进程的开启方式 利用模块开启进程 利用类开启进程 二,多进程 服务器端 客户端 阅读全文
posted @ 2017-08-24 19:45 liqianlong 阅读(5136) 评论(0) 推荐(0) 编辑
摘要:isinstance和issubclass isinstance(obj,cls)检查是否obj是否是类 cls 的对象或者子类的对象 issubclass(sub, super)检查sub类是否是 super 类的派生类 反射 1 什么是反射 反射的概念是由Smith在1982年首次提出的,主要是 阅读全文
posted @ 2017-08-24 17:19 liqianlong 阅读(265) 评论(0) 推荐(0) 编辑
摘要:一,发生粘包 服务器端 客户端 二,用struct模块解决粘包问题 为字节流加上自定义固定长度报头,报头中包含字节流长度,然后一次send到对端,对端在接收时,先从缓存中取出定长的报头,然后再取真实数据 服务器端 客户端 三,大文件粘包问题 服务器端 客户端 四,udp套接字 服务器端 客户端 ud 阅读全文
posted @ 2017-08-24 12:00 liqianlong 阅读(444) 评论(0) 推荐(0) 编辑
摘要:一,封装 【封装】 隐藏对象的属性和实现细节,仅对外提供公共访问方式。 【好处】 1. 将变化隔离; 2. 便于使用; 3. 提高复用性; 4. 提高安全性; 【封装原则】 1. 将不需要对外提供的内容都隐藏起来; 2. 把属性都隐藏,提供公共方法对其访问。 私有变量和私有方法 在python中用双 阅读全文
posted @ 2017-08-23 18:08 liqianlong 阅读(193) 评论(0) 推荐(0) 编辑
摘要:一,异常处理 二,hashlib模块 三,configparser模块 四,logging模块 阅读全文
posted @ 2017-08-23 09:20 liqianlong 阅读(404) 评论(0) 推荐(0) 编辑
摘要:一,接口类 继承有两种用途: 一:继承基类的方法,并且做出自己的改变或者扩展(代码重用) 二:声明某个子类兼容于某基类,定义一个接口类Interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子类继承接口类,并且实现接口中的功能 开发中容易出现的问题 接口初成:手动报异常:No 阅读全文
posted @ 2017-08-22 23:53 liqianlong 阅读(462) 评论(0) 推荐(0) 编辑
摘要:一,套接字 先从服务器端说起。服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客户端连接。在这时如果有个客户端初始化一个Socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。客户端发送数据 阅读全文
posted @ 2017-08-22 20:25 liqianlong 阅读(520) 评论(0) 推荐(0) 编辑
摘要:一,组合 组合指的是,在一个类中以另外一个类的对象作为数据属性,称为类的组合 人类装备了武器类就是组合 1.圆环,将圆类实例后传给圆环类 二,.多组合 三,继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 3.1 继承 阅读全文
posted @ 2017-08-12 23:40 liqianlong 阅读(307) 评论(0) 推荐(0) 编辑
摘要:一,包的调用 二,模块的调用 三,常规调用 倒入模块的时候的优先级 先内置模块安装的扩展模块自己写的模块 开发规范目解释 全英文,py文件,(函数,类的命名注意规范) soft 软件名字 bin 程序开始的地方 start.py 不要超过五十行,调用的地方 conf 配置文件,代码结构,输出要求。用 阅读全文
posted @ 2017-08-12 17:16 liqianlong 阅读(307) 评论(0) 推荐(0) 编辑
摘要:一,通过函数写人狗大战这个故事 **上面的调用很完美但是如果出现下面的情况的话,你会分不清楚谁攻击,谁咬死 attack(dahei) #这个攻击是人的属性,狗也可以了 bite(joker) #这个攻击时狗的属性,人也可以了 二,通过嵌套函数去写 **上面的函数嵌套很完美但是如果我想现在定义个吃, 阅读全文
posted @ 2017-08-12 15:44 liqianlong 阅读(7202) 评论(0) 推荐(0) 编辑
摘要:一,os模块 os模块是与操作系统交互的一个接口 二,sys模块 sys模块是与python解释器交互的一个接口 阅读全文
posted @ 2017-08-09 22:27 liqianlong 阅读(261) 评论(0) 推荐(0) 编辑
摘要:一,为什么要序列化 # 将原本的字典、列表等内容转换成一个字符串的过程就叫做序列化'''比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给?现在我们能想到的方法就是存在文件里,然后另一个python程序再从文件里读出来。但是我们都知道,对于文件来说是没有字典这个概念的, 阅读全文
posted @ 2017-08-09 22:15 liqianlong 阅读(278) 评论(0) 推荐(0) 编辑
摘要:一,time模块 和时间有关系的我们就要用到时间模块。在使用模块之前,应该首先导入这个模块 常用方法1.(线程)推迟指定的时间运行。单位为秒。 2.获取当前时间戳 缺点,看不懂 3.表示时间的三种方式 在Python中,通常有这三种方式来表示时间:时间戳、元组(struct_time)、格式化的时间 阅读全文
posted @ 2017-08-09 22:06 liqianlong 阅读(232) 评论(0) 推荐(0) 编辑
摘要:一,collections模块 在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和OrderedDict等。1.namedtuple: 生成可以使用名字来访 阅读全文
posted @ 2017-08-09 21:56 liqianlong 阅读(620) 评论(0) 推荐(0) 编辑
摘要:一,re模块的用法 练习题 爬豆瓣网页匹配 阅读全文
posted @ 2017-08-09 21:53 liqianlong 阅读(289) 评论(0) 推荐(0) 编辑
摘要:一,正则表达式 1.字符组:[0-9][a-z][A-Z] 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示字符分为很多类,比如数字、字母、标点等等。假如你现在要求一个位置"只能出现一个数字",那么这个位置上的字符只能是0、1、2...9这10个数之一。可以写成这种 [0-5 阅读全文
posted @ 2017-08-09 21:39 liqianlong 阅读(257) 评论(0) 推荐(0) 编辑
摘要:一,生成器表达式 #生成器表达式比列表解析更省内存,因为惰性运算 对比 小知识 二,各种推导式 #推导式套路# variable = [out_exp_res for out_exp in input_list if out_exp == 2]# out_exp_res: 列表生成元素表达式,可以是 阅读全文
posted @ 2017-08-05 22:26 liqianlong 阅读(1457) 评论(0) 推荐(0) 编辑
摘要:一,匿名函数 #简单的需要用函数去解决的问题 匿名函数的函数体 只有一行#也叫lambda表达式# cal2(函数名) = lambda n(参数) : n*n(参数怎么处理,并且返回值)#参数可以有多个,用逗号隔开#匿名函数不管逻辑多复杂,只能写一行,且逻辑执行结束后的内容就是返回值#返回值和正常 阅读全文
posted @ 2017-08-05 21:45 liqianlong 阅读(385) 评论(0) 推荐(0) 编辑
摘要:一,可迭代的&可迭代对象 1.一个一个的取值就是可迭代的 iterable#str list tuple set dict#可迭代的 ——对应的标志 __iter__ 2.判断一个变量是不是一个可迭代的 # print('__iter__' in dir(list))# print('__iter_ 阅读全文
posted @ 2017-08-03 23:02 liqianlong 阅读(283) 评论(0) 推荐(0) 编辑
摘要:一,内置函数 #内置的模块#拿过来直接就用的:内置的函数 阅读全文
posted @ 2017-08-03 21:55 liqianlong 阅读(303) 评论(0) 推荐(0) 编辑
摘要:一,什么叫递归 #递归#在一个函数里调用自己#python递归最大层数限制 997#最大层数限制是python默认的,可以做修改#但是我们不建议你修改 例子和尚讲故事 修改深度 二,递归实例 递归实现三级菜单 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 阅读全文
posted @ 2017-08-01 21:27 liqianlong 阅读(276) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示