本体区块链上neo虚拟机的python编译器

ont-boa的Python项目详细描述


概述

neo-boa编译器是将python文件编译到 .avm格式,用于Neo Virtual Machine中,该格式用于 在Neo Blockchain上执行合同。

编译器支持python语言的一个子集(以同样的方式 一条boa constractor是Python种类的一个子集)

它目前做什么

  • 将python语言的一个子集编译为 用于Neo Virtual Machine
  • 适用于Python 3.6+
  • 添加用于在neo python或其他neo调试器中调试的调试映射

它能做什么

  • 编译python语言的较大子集

获得帮助或给予帮助

  • 打开一个新的 issue如果你 遇到问题。
  • 或者在NEO official community chatroom上ping @localhuman
  • 欢迎拉取请求。新功能、编写测试和文档 都是必需的。

安装

确保您使用的是Python3.6或更高版本的虚拟环境

PIP

pip install neo-boa

Docker

此项目包含一个dockerfile,用于批编译python smart 合同。克隆存储库并导航到Docker Sub 项目的目录。运行以下命令生成 容器:

docker build -t neo-boa .

neo boa docker容器获取主机上包含 python智能合约作为输入和编译.avm的目录 文件作为输出。它可以这样执行:

docker run -it -v /absolute/path/input_dir:/python-contracts -v /absolute/path/output_dir:/compiled-contracts neo-boa

-v(volume)命令将主机上的目录映射到 容器中的目录。

手动

克隆存储库并导航到项目目录。做一个 python 3虚拟环境并通过以下方式激活它:

python3 -m venv venv
source venv/bin/activate

或者,要特别安装python 3.6:

virtualenv -p /usr/local/bin/python3.6 venv
source venv/bin/activate

然后,安装要求:

pip install -r requirements.txt

用法

编译器的用法如下:

from boa.compiler import Compiler

Compiler.load_and_save('path/to/your/file.py')

文档

你可以read the docs here

测试

所有测试都位于boa_test/test。可以使用以下命令运行测试python -m unittest discover boa_test

许可证

捐款

atemnpsjrvsxmajw4zyjbsvuj6ur2mjqu接受

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

推荐PyPI第三方库


热门话题
将firebase中的对象添加到列表中的java问题   java文件I/O和异常   为泛型队列类生成toString()方法时出现java逻辑错误   java如何在使用对象映射器从Json字符串反序列化到对象时跳过映射的映射   多线程Java:如何使用线程和用户输入显示奇数和偶数   java订阅主题。MQTT   只能识别CR LF的java扫描程序   java如何从任务栏隐藏swing窗体图标?   Java将类型化列表转换为数组   同一进程的多个实例的java独立日志?   java如何在触发器的帮助下更新不同sql表中的行   更改ArrayList时不更新ArrayList和ListView的java Android阵列适配器   java在完成另一个任务后执行一个任务   性能如何使图像生成在Java上可伸缩?