蟒蛇突
proclib的Python项目详细描述
proclib是围绕标准 库子流程模块,用python编写,具有适当的管道 旨在简化unix实用程序正确使用的支持 帮助开发人员专注于命令而不是 调用命令的代码。
概述
- proclib.api.spawn(命令)
给定组成命令的字符串或列表cmd,返回 一个响应对象,它是命令管道化的结果, 也就是说,它们在parallel中运行。data参数可以是 用于配置传入初始进程的数据。 用法示例:
>>> from proclib.api import spawn >>> r = spawn('yes | head') >>> r.stdout.read() 'y\ny\ny\ny\ny\ny\ny\ny\ny\ny\n' >>> r.close() >>> r.history[0].explain_signal() {'action': 'kill', 'description': 'write on a pipe with no readers', 'id': 13, 'signal': 'SIGPIPE'}
流式处理支持是内置的,即 任何进程都可以惰性地流式传输,而不是读取和存储 在记忆中一气呵成。而且,任何类型的iterable都可以 管道输送到流程:
def gen(): yield 'hi\n' yield 'ho\n' r = spawn('cat', data=gen()) assert r.out.split() == ['hi', 'ho']