Python常用库
python库更新问题:
库过旧可能导致的问题:即当使用多个库时,他们之前一般有最低版本要求。如果其中一个版本过低,会导致无法协作开发。
解决方案:(需要注意的是,一旦涉及到文件读写,那么都需要 sudo 权限)
安装pip :sudo easy_install pip
使用pip更新 python库:http://www.cnblogs.com/luckjun/p/4958338.html。
excel处理相关内容:
excel格式问题:主要分为 xls 和 xlsx
xls可以被所有的excel程序打开,而xlsx则只能被office 07以上的excel程序打开。
07版以后的扩展名都是.xlsx ,是用新的基于XML的压缩文件格式取代了其目前专有的默认文件格式,在传统的文件名扩展名后面添加了字母x(即.docx取代.doc、.xlsx取代.xls,等等),使其占用空间更小。
Excel Python 主要有三个库:(前两者不能混用)
xlwt是 xls 格式的写入库
xlsxWriter 是 xlsx的写入库
xlrd是excel读入库,可以兼容 xls 和 xlsx(对后者的支持力度有限)。
具体比较可以参考:http://www.gocalf.com/blog/python-read-write-excel.html
读入的表的行数序号是从0开始算起的,而不是按照文件打开显示的列号。
因此,建议使用 xlrd来读取文件内容,使用 xlsxWriter 来创建文件内容。
xlsxWriter的使用方式:https://www.linuxyw.com/464.html
JSON数据读取问题:
因为字典key不存在会引发crash问题,数组越界也会引发crash问题,因此建议使用try-catch 捕获异常,来直接获取数据,避免复杂的取值判断操作。
目前建议使用JSON 库作为官方解析工具。
文件操作:
API集合:http://www.cnblogs.com/rollenholt/archive/2012/04/23/2466179.html
os.removedirs( “xxxx/xxx” ):删除一个空的叶子目录,并向上回溯,如果上级目录也是空的,那么也将其删除,依次类推,直到权限不够或者目录非空为止。
os.makedirs( “xxx/xxx” ):一次性创建多级目录
多线程与多进程:
多线程使用 threading 库,但是python的多线程是伪多线程,因为其在语言解释器层级还有一个GIL,这个锁会导致语言解释器会串行的解释脚本。
多进程使用 mutilprocess 库,这个库提供了两种并行方式:
进程对象管理方式: process
进程池方式:pool。因为mac电脑可以超线程运行,因此,一旦开启就会导致出错,要手动设置 Pool的大小比较好。
在使用这个库时,可以使用 Manager 来管理共享数据,manager 生成的数据,是共享内存的。对于,全局变量,都是复制捕获类型。