在完全隔离的环境中执行代码的python库

pascua的Python项目详细描述


帕斯卡

PyPIRead the DocsTravis (.org) branchCoveralls githubGitHubGitHub stars

说明

在完全隔离的环境中执行代码的python库。

important:此存储库处于开发的早期阶段,因此不建议使用它。不过,我们欢迎您的贡献!

安装

您可以通过pip

安装最新的pascua版本
pip install pascua

它是怎么工作的?

pascua允许我们通过容器化技术在隔离的环境中执行代码。其主要思想是pascua使用在Environment构造函数的相应实现中定义的给定参数构建docker图像。

当执行对exec(.)方法的调用时,它使用生成的docker图像作为启动适当的解释器或代码编译的基础,以便结合在context字典中定义的变量来执行给定的source_code

用法

python环境

importpascuaaspsccontext={'size':100,}source_code=['import numpy as np','random_numbers = np.random.uniform(size=size)',]env=psc.PythonEnvironment(version='3.7.3',pip_dependencies=['numpy>=1.14.0',])result=env.exec(source_code,context)

R环境

importpascuaaspsccontext={'size':100,}source_code=['random_numbers <- runif(n = size)',]env=psc.REnvironment(version='latest',)result=env.exec(source_code,context)

C++环境< EH3>
importpascuaaspsccontext={'size':100,}source_code=['float r;','vector<float> random_numbers;','for (int i = 0; i < size; i++) {','  r = static_cast <float> (rand()) / static_cast <float> (RAND_MAX);','  random_numbers.push_back(r);','}',]env=psc.CCEnvironment(version='latest',includes=['vector','numeric',])result=env.exec(source_code,context)

开发

您只需键入:

python setup.py install

要运行测试,请执行:

python -m unittest discover tests

许可证

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
mysql java语言非法参数异常?   java绘制控制流图   无法通过java eclipse中的ssh隧道远程连接到mysql数据库   直接在@SuppressWarnings之后出现java Eclipse错误(“未选中”)   java如何使用远程api google应用程序引擎api客户端?   工具栏中的java导航图标颜色未更改?   java返回带有映射子集的实体   java Spring重新加载属性Bean未更新   fileoutputstream正在获取java。木卫一。IOException:流关闭错误,但未显式关闭它   jsp标记显示java。时间使用jstl的LocalDateTime   java如何设置onFailure事件(Spring,Kafka)的超时?   将java元素添加到多个线程中的列表时,会跳过这些元素   JAVAutil。扫描程序Java读取空格后的整数值   java JMonkey过滤器着色器获取片段的世界位置   java从mongodb获取随机值   java如何使用Intent。标记\u活动\u清除\u顶部以清除活动堆栈?   多线程如何控制在多个端口上监听的java服务器应用程序   在具有复合键的相关实体之间插入数据时发生java Hibernate错误