摘要: 1、Barrier # Barrier 可以理解为路障或者道闸; # 作用:等待所有的线程到齐后开始放行; broken 如果屏障状态处于被打破的状态,返回True;abort() 将屏障置于broken状态,等待中的线程或者调用等待方法的线程中都会抛出BrokenBarrierError异常,等待 阅读全文
posted @ 2018-11-01 19:28 soulgou 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 1、Event # Event事件,是线程间通信机制中最简单的实现,使用一个内部的标记flag,通过flag的True或False的变化进行操作; # 总结:使用同一个Event对象的标记flag,默认flag=False;谁wait就是等到flag变为True,或等到超时返回False,不限制等待 阅读全文
posted @ 2018-10-30 21:38 soulgou 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 1、并发 1.1、并发与并行 并行,parallel,同一时刻,执行不同任务,并且相互没有干扰; 并发,concurrency,一段时间内,交替执行不同的任务; 串行,一个任务执行完成后执行下一个任务; 1.2、并发的解决方法 “高并发模型”:例如早高峰的北京地铁,在同一时刻,需要处理大量任务,可以 阅读全文
posted @ 2018-10-30 16:26 soulgou 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 1、什么是序列化与反序列化? # 我们把对象(或变量)从内存变成可存储或可传输的过程称之为序列化,在python中被称为picking; # 自定义的类的实例如何保存在一个文件中?如何从文件中读取数据,并让他们在内存中再次恢复成自己对应的类的实例? # 按照某种规则,把内存中的数据保存到文件中,文件 阅读全文
posted @ 2018-10-22 12:00 soulgou 阅读(7064) 评论(1) 推荐(0) 编辑
摘要: 1、CSV文件 1.1、csv文件简介 # 什么是csv文件?csv是一个被行分隔符,列分隔符分成行和列的文本文件; # csv不指定字符编码; # 行分隔符为\r\n,最后一行可以没有换行符; # 列分隔符通常为逗号,或者制表符; # 每一行为一条记录record;字段可以使用双引号括起来,也可以 阅读全文
posted @ 2018-10-21 22:41 soulgou 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 1、OS模块 # os模块主要功能:系统相关,目录及文件操作,执行命令和进程管理 1.1、系统相关 1.2、文件和目录操作 # os.getcwd() # 获取当前工作路径 # os.chdir('dirname') 其中dirname为路径; # 切换目录,相当于shell下的cd 命令 # os 阅读全文
posted @ 2018-10-21 18:29 soulgou 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 1、os.path模块 # os.path常用方法 2、pathlib模块 # python3.4版本引入pathlib模块,提供Path对象来操作,包括目录和文件; # 模块导入: from pathlib import Path 2.1、目录操作 2.1.1、初始化 # 初始化操作: 2.1.2 阅读全文
posted @ 2018-10-19 21:01 soulgou 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 1、stringIO # io模块中的类,导入方法:from io import StringIO # 内存中会开辟一个文本模式的buffer,可以像文件对象一样操作它 # 当close方法被调用的时候,这个buffer会被释放; 2、stringIO操作 # getvalue() 获取全部内容,跟 阅读全文
posted @ 2018-10-19 14:53 soulgou 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 1、文件IO常用操作 # 文件操作命令 2、打开操作open # open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 创建并打开一个文件test 阅读全文
posted @ 2018-09-29 16:51 soulgou 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 1、装饰器 1.1、什么是装饰器? # 装饰器(Decorator):从字面意思理解,就是装饰对象的工具;装饰器也是闭包函数+高阶函数的一种应用; # 装饰器的使用原则: ①:不修改被装饰对象的源代码; ②:不改变被修饰对象的调用方式; ③:在满足前面两个条件的前提下,为被装饰对象添加上新功能; 1 阅读全文
posted @ 2018-09-14 18:24 soulgou 阅读(254) 评论(0) 推荐(0) 编辑