bjmayor 发布于 2022-02-28

Python多进程相关概念及解释

Python多进程相关概念及解释

[TOC]

介绍

由于GIL的存在,为了利用多核的优势,Python程序员不得不使用多进程。(多线程在PYthon中仅在IO密集型任务中有优势)。
Python提供了非常好用的多进程包multiprocessing,只需要定义一个函数,Python会完成其他所有事情。借助这个包,可以轻松完成从单进程到并发执行的转换。multiprocessing支持子进程、通信和共享数据、执行不同形式的同步,提供了Process、Queue、Pipe、Lock等组件。
感觉使用方法和threading差不多。

阅读全文 »

bjmayor 发布于 2022-02-28

Python标准库abc介绍

Python标准库abc介绍

[TOC]

前言

很多书都没有提到abc。python本身并没有抽象类,抽象函数。它是通过标准库abc提供的。
以前也热衷于造轮子,现在越来越趋向于去熟悉有哪些轮子,能不造则不造,这样开发起来效率快多了。
用于写代码的时候越少,用于思考的时间就越多。
之前看到的几本书,<python标准库>,<python绝技:运用python成为顶级黑客>,<Head+First+Python(中文版)>,<Flask Web开发:基于Python的Web应用开发实战>,都没有看到abc库。
直到<python学习手册>里才看到。这本书我也是极力推荐阅读的。

最近看到的<Python高手之路>更是极力推荐abc库,说是大多数人居然不知道abc库的存在,还自己去造轮子。

阅读全文 »

bjmayor 发布于 2022-02-28

python之logging模块

python之logging模块

[TOC]

介绍

logging模块是用来做日志记录的。
logging.config用来配置。
logging.handlers用来处理日志,可以是屏幕输出,可以是写文件(文件又可以自动切割文件),可以是发邮件。

阅读全文 »

bjmayor 发布于 2022-02-27

urllib vs request

Python3标准库urllib

[TOC]

前言

做web开发的,和http请求打交道最多了,不得不熟悉的就是urllib。当然爬虫也经常用。并且有好的第三方库requests。
本文就介绍这些东东。
note: 是在python3.5下测试运行。

阅读全文 »

bjmayor 发布于 2022-02-27

SQLAlchemy介绍

SQLAlchemy介绍
[TOC]

前言

玩Python的人很有必要非常熟悉SQLAlchemy。因为它是python中最主流的orm。
我之前只在flask中用过。发现用的还不是很顺畅,不能手到拿来。故又整理了这篇文章。

查询sql有几个点:

  1. 直接原始语句查询。
  2. 对象关系映射,即orm
  3. 其它关联的是数据库链接池和事务。

下面一一道来。

阅读全文 »

bjmayor 发布于 2022-02-27

python第三方模块psutil系统管理工具介绍

python第三方模块psutil系统管理工具介绍

[TOC]

psutil安装

pustil可以通过pip install psutil简单的安装。

接下来就是举例,用psutil完成的一些功能。

psutil使用

获取物理内存总大小和已使用大小

>>> import psutil >>> mem = psutil.virtual_memory() >>> mem.total,mem.used (8589934592, 7704367104) >>>

good,我的系统是mac,没有free命令。拿到结果了,做为一个兼容的系统管理工具不错。

阅读全文 »