随笔分类 -  Python学习笔记

摘要:内容相关: 概念:进程的通信 Queue:创建与使用 Pipe:创建与使用 进程通信的概念 进程的资源空间是相互独立的,一般而言是不能相互访问的。但很多情况下进程间需要互相通信,来完成系统的某项功能。进程通过与内核及其它进程之间的互相通信来协调它们的行为。 通信方法: 数据传输:一个进程将它的数据发送给另一个进程【如socket一般,把需要通信的数据传输给对方】 管道:使用一片独立的... 阅读全文
posted @ 2018-02-10 18:00 随风行云 阅读(377) 评论(0) 推荐(0)
摘要:内容相关: multiprocessing: 进程的创建与运行 进程常用相关函数 进程池: 为什么要有进程池 进程池的创建与运行:串行、并行 回调函数 多进程multiprocessing: python中的多进程需要使用multiprocessing模块 多进程的创建与运行: 1.进程的创建:进程对象=multiprocessing.Process(target=函数名... 阅读全文
posted @ 2018-02-10 15:58 随风行云 阅读(319) 评论(0) 推荐(0)
摘要:queue: 什么是队列:是一种特殊的结构,类似于列表。不过就像排队一样,队列中的元素一旦取出,那么就会从队列中删除。 线程之间的通信可以使用队列queue来进行 线程如何使用queue.Queue【还有其他类型的对象下面讲】来通信: 1.创建一个Queue对象:对象=queue.Queue(x),x是队列容量,x可以不填,默认没有容量限制, 2.get()可以使线程从队列中获取一... 阅读全文
posted @ 2018-02-09 18:32 随风行云 阅读(1097) 评论(0) 推荐(2)
摘要:互斥锁: 为什么要有互斥锁:由于多线程是并行的,如果某一线程取出了某一个数据将要进行操作,但它还没有那么快执行完操作,这时候如果另外一个线程也要操作这个数据,那么这个数据可能会因为两次操作而发生错误 import time,threading x=6 def run1(): print("run1我拿到了数据:",x) print("我现在还不想操作,先睡一下") ... 阅读全文
posted @ 2018-02-09 00:54 随风行云 阅读(624) 评论(0) 推荐(0)
摘要:线程与进程: 线程对于进程来说,就好似工厂里的工人,分配资源是分配到工厂,工人再去处理。 线程是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。 在单个程序中同时运行多个线程完成不同的工作,称为多线程 对于IO密集型的程序来说,多线程可以利用读IO的时间去做其他事【IO并不占用CPU,这就好像... 阅读全文
posted @ 2018-02-08 15:57 随风行云 阅读(693) 评论(0) 推荐(0)
摘要:粘包: 发生原因: 当调用send的时候,数据并不是即时发给客户端的。而是放到了系统的socket发送缓冲区里,等缓冲区满了、或者数据等待超时了,数据才会发送,所以有时候发送太快的话,前一份数据还没有传给客户端,那么这份数据和上一份数据一起发给客户端的时候就会造成“粘包” 。 解决方案: 解决根源的思想是避免不同段的数据一起发送。 方案1:前一段数据send完后,等待一段时间再... 阅读全文
posted @ 2018-02-08 02:06 随风行云 阅读(344) 评论(0) 推荐(0)
摘要:本文内容: socket介绍 TCP: 服务端 客户端 UDP: 服务端 客户端 首发时间:2018-02-08 01:14 修改: 2018-03-20 :重置了布局,增加了UDP 什么是socket: socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求。 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端... 阅读全文
posted @ 2018-02-08 01:14 随风行云 阅读(932) 评论(0) 推荐(0)
摘要:本文内容: 正则表达式常用字符、 常用可选标志位、 group与groups、 match、 search、 sub、 split findall、 compile 特殊字符转义 一些现实例子 首发时间:2018-02-07 17:17 修改: re: 介绍: 关于正则表达式的模块 正则表达式字符: 阅读全文
posted @ 2018-02-07 17:17 随风行云 阅读(2444) 评论(0) 推荐(1)
摘要:相关内容: __del__、__doc__、__dict__、__module__、__getitem__、__setitem__、__delitem__、__str__、__repr__、__call__ 首发:posted @ 2018-02-07 01:08 修改: 2018-02-14 13:57:增加__repr__ __del__: 被称为析构函数 当删除一... 阅读全文
posted @ 2018-02-07 01:08 随风行云 阅读(244) 评论(2) 推荐(0)
摘要:什么是异常: 当程序遭遇某些非正常问题的时候就会抛出异常:比如int()只能处理能转化成int的对象,如果传入一个不能转化的对象就会报错并抛出异常 常用的异常有: ValueError :传入无效的错误的参数 TypeError:进行了对类型无效的操作 IndexError:序列中没有此索引 Nam 阅读全文
posted @ 2018-02-06 21:43 随风行云 阅读(4380) 评论(0) 推荐(0)
摘要:反射: 反射就是可以从对象中搜索出所需的属性 先检测是否存在某属性用hasattr,如果要获取用getattr,如果对属性要进行添加或修改用setattr,如果需要删除用delattr 【如果没有某个属性,getattr会报错,setattr不会报错,delattr会报错】 class A: haha=1 def helo(self): pass a=A() ch... 阅读全文
posted @ 2018-02-06 20:39 随风行云 阅读(139) 评论(0) 推荐(0)
摘要:私有变量,私有方法: python的私有化是为了规划私有属性,避免非相关的访问【假如!我有老婆,你不能直接知道我老婆是谁,你只有问我才会知道,即我的私有属性只有我知道】 在python中定义私有变量和私有方法只需要在变量名或函数名前加上 "__"两个下划线 在类内部的方法中使用时 self.__变量名或函数名。 实际上,如果真要访问私有变量和私有方法,也是可以访问的,因为实际上私有化的操作... 阅读全文
posted @ 2018-02-06 20:15 随风行云 阅读(551) 评论(0) 推荐(0)
摘要:相关内容: 继承:多继承、super、__init__、重写父类变量或函数 多态 继承: 在Python3中,不写基类的类默认继承object 继承就是子类获得了父类的全部功能:比如学生和老师都有“姓名,性别,年龄、ID”等学校人员属性,如果学生和老师都直接继承学校人员的“姓名,性别,年龄、ID”,那么就不必要在学生类和老师类中重复定义了。 继承指定类的方式是:class 类名(... 阅读全文
posted @ 2018-02-06 01:05 随风行云 阅读(316) 评论(0) 推荐(0)
摘要:前言:认为方法与函数同意义,由于这里使用method,所以称为方法 静态方法: 使用@staticmethod来定义静态方法。 静态方法:类和实例都可以调用的方法,实际上跟类没什么关系了,对于这种不太相关的就使用静态方法【用实例和类调用没有区别】 class Dog(object): def __init__(self,name): self.name=name ... 阅读全文
posted @ 2018-02-05 22:12 随风行云 阅读(348) 评论(0) 推荐(0)
摘要:类和对象: 类的定义:用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 类的优势:将一个对象的功能集中于一体,便于操作,降低了代码的重复。 实例化:创建一个类的实例,类的具体对象。 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。 使用 class 语句来创建一个新类: class Dog: ... 阅读全文
posted @ 2018-02-05 20:33 随风行云 阅读(1602) 评论(0) 推荐(0)
摘要:xml: 介绍:包含关于可扩展标记语言xml的函数 使用: python有三种方法解析XML--SAX,DOM,以及ElementTree,由于xml技术落后,所以这里不对sax,dom介绍: xml文本: red yellow unknow ElementTree的使用... 阅读全文
posted @ 2018-02-05 16:31 随风行云 阅读(338) 评论(0) 推荐(0)
摘要:sys: 介绍:主要包含涉及python编译器与系统交互的函数。 常用函数: import sys print(sys.argv)#本文件名,已经运行该程序时的参数 #[如在命令窗口中python3 mysys.py 参数1 参数2] #那么参数1为sys.argv[1],以此类推 print(sys.version)#python版本号 print(sys.path)#返回模块的搜索... 阅读全文
posted @ 2018-02-05 01:14 随风行云 阅读(485) 评论(0) 推荐(0)
摘要:字典生成式: 跟列表生成式一样,字典生成式用来快速生成字典,不同的是,字典需要两个值 #d = {key: value for (key, value) in iterable} d1 = {'x': 1, 'y': 2, 'z': 3} d2 = {k: v for (k, v) in d1.items()} print(d2) 集合生成式: 集合生成式格式和列表生成式类似,不过用的是大... 阅读全文
posted @ 2018-02-04 22:06 随风行云 阅读(6108) 评论(1) 推荐(0)
摘要:包: 为了组织好模块,将多个模块组合为一个包,所以包用于存放python模块 包通常是一个文件夹,当文件夹当作包使用时,文件夹需要包含__init__.py文件 __init__.py的内容可以为空,一般用来进行包的某些初始化工作或者设置__all__值,__all__是在from ... impo 阅读全文
posted @ 2018-02-04 16:08 随风行云 阅读(194) 评论(0) 推荐(0)
摘要:相关内容: 什么是模块 模块的导入 模块的导入 自模块的导入 同级目录导入 不同级目录导入 目录内导入目录外 目录外导入目录内 __name__ 首发时间:2018-02-04 15:23 修改: 2018-02-20 14:50 新增了前言“相关内容” 增加了对什么是模块的少量描述细节 模块导入中不同目录导入新增“目录外的导入目录内的” 什么是模块: 在Pytho... 阅读全文
posted @ 2018-02-04 15:23 随风行云 阅读(394) 评论(0) 推荐(0)