Python bindings for piston_rs.
Project description
piston_rspy
Python bindings for piston_rs
.
What is piston_rspy
piston_rspy provides Python users the ability to interact with the Piston code execution engine, but behind the scenes it is powered by piston_rs, a Rust library designed for the same purpose.
Getting started
piston_rspy officially supports Python versions 3.7, 3.8, 3.9, and 3.10. For an in depth look at the API, check out the documentation!
Installation
pip install piston_rspy
Usage
Fetching the available runtimes from Piston.
import asyncio
import piston_rspy
async def main() -> None:
client = piston_rspy.Client()
runtimes = await client.fetch_runtimes()
print(runtimes)
if __name__ == "__main__":
asyncio.run(main())
Executing python code via Piston.
import asyncio
import piston_rspy
async def main() -> None:
file = piston_rspy.File(
name="main.py",
content="for i in range(10): print(i)",
)
executor = piston_rspy.Executor(
language="python",
version="3.10",
files=[file],
)
client = piston_rspy.Client()
response = await client.execute(executor)
print(f"Language: {response.language} v{response.version}")
if response.compile:
print(f"Compilation:\n{response.compile.output}")
print(f"Output:\n{response.run.output}")
if __name__ == "__main__":
asyncio.run(main())
The builder flow that is used in piston_rs
is available in
piston_rspy
as well.
import asyncio
import piston_rspy
async def main() -> None:
client = piston_rspy.Client()
response = await client.execute(
piston_rspy.Executor()
.set_language("python")
.set_version("3.10")
.add_file(
piston_rspy.File(
name="main.py",
content="for i in range(10): print(i)",
)
)
)
print(f"Language: {response.language} v{response.version}")
if response.compile:
print(f"Compilation:\n{response.compile.output}")
print(f"Output:\n{response.run.output}")
if __name__ == "__main__":
asyncio.run(main())
License
piston_rspy is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
piston_rspy-0.2.0.tar.gz
(11.3 kB
view hashes)
Built Distributions
Close
Hashes for piston_rspy-0.2.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1fb14715b6b1581f7d04d9b268925a06f32d4e03500666de6519bf129932a1b6 |
|
MD5 | 7001494733b77fe6bebec7c946beee76 |
|
BLAKE2b-256 | 608878bfab35fc3d7272f0e125184d95839995063204231f93b70b0f76867722 |
Close
Hashes for piston_rspy-0.2.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01abc8d8915be7cc7ccfacb0cca15365cdb76a04afdbe18f006fb66489bf1161 |
|
MD5 | e4cb04dc2ace2701b93550a6acdc0ddc |
|
BLAKE2b-256 | d25ed6ceb3843b90aa8699fed76d57273c445fae69196bbe8542eccfd9661323 |
Close
Hashes for piston_rspy-0.2.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b92c12bdba6100b878c02639299411dbaabf9b26f4068db932530f26df10ecf6 |
|
MD5 | 23520f5cc74f746d65ee2db9b1e201be |
|
BLAKE2b-256 | 781355029cffeec4c7611539842873903c20b5a5f3a6ef024f2cb412d2ca047f |
Close
Hashes for piston_rspy-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43429b873839f158e3e38f2897e61d07d869c324a1fbaee006ca3d9315fa30e7 |
|
MD5 | 9eb9ff14d8f5ca4fafb96fccf831061c |
|
BLAKE2b-256 | 31acf174adf6d4465daac091af2526c159eeca1a668cc9679f6883b979544255 |
Close
Hashes for piston_rspy-0.2.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcbe6743f818b08179b2bf94178fc1c2cf30d7be3df09b27ac1897de5ff9ac24 |
|
MD5 | ea7cdce5de7f4affd2cfe0e26560779c |
|
BLAKE2b-256 | 70b456b786dab2cbbb49bbbd22fa68806cc0ebf93938a42036fc7ea985563d84 |
Close
Hashes for piston_rspy-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c2cc0c26e302774bdd2ebef93b31d490db79f48328ad68e3fd1df46f96b6bbc |
|
MD5 | 97ddb6ee8ab64e62b500ce2fd24dce35 |
|
BLAKE2b-256 | a711fe61ba2e6fc4345f0044e9bfe001322f2d37d98051383e321c3f8764e178 |
Close
Hashes for piston_rspy-0.2.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b02fd39f772fbb05c2e4dc52c1c0a906aa278efb6e5b354533128ad89ce6fec1 |
|
MD5 | 755db00f75f6e4f5160b511909dc5acf |
|
BLAKE2b-256 | 30e06fc76b932cc37aed3dbc771a004c64f1c577abbde1003f6ac25547572e1c |
Close
Hashes for piston_rspy-0.2.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e9a78ff6accfb87f3060699da372277427a064063c4383e2c23df6444f4a849 |
|
MD5 | bae9fe4b2e0d49bad7f51dd5f0aaa677 |
|
BLAKE2b-256 | 2504b6642faac7c9832fe6d88b251e2825300b3f9b7a6a2f90ccd5b77087809a |
Close
Hashes for piston_rspy-0.2.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2dc5d5f8e824165180c146ef7107bcb0e222608b5ab4d1b80b605907280e2769 |
|
MD5 | ccc096bcc8f223fe7db0cfe8a6fa7e8d |
|
BLAKE2b-256 | 633e71eaa9c576ba21d096a1b2dad82a415ff8327c748770df89c95e12e42731 |
Close
Hashes for piston_rspy-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 134f6838c082adc2c3f5148fe7d3d271eda4f8560e81194f7c0743631b5b88f7 |
|
MD5 | c83c79e14d4c7e22c64fd6f43025b9b1 |
|
BLAKE2b-256 | a465b29ed645add06da279528beac50a7f441a8ca06f0f5b3799f54263b6e922 |
Close
Hashes for piston_rspy-0.2.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 828b2a98abc432963f8c2598c246aeb0e7f87b3be0d6e96bc4537b6dba6763cf |
|
MD5 | d31941bb144de2164ab2a70042bc5da3 |
|
BLAKE2b-256 | 53db5a49e76f53cfc9b660d7f5b478af748576936c089f6c1cc047c9026e696e |
Close
Hashes for piston_rspy-0.2.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 036a9202e6d7301b737e2dd70e85b60ffe1fc41f700c4cf3044b722b908e9f2e |
|
MD5 | 5f7f968da8bf18d2d26017a23edae077 |
|
BLAKE2b-256 | 32e9a017421e1e04878dc8434b2d772b973435badba79395e34f1abf14c7b65c |
Close
Hashes for piston_rspy-0.2.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47e3c00b63df17850b7ad0885b465d5f45fd9b44d07cb6af0414788fa34def85 |
|
MD5 | 2ed02fe3fea946de8a9382a18e225412 |
|
BLAKE2b-256 | 43cab0b8c078bc0c7b9d57ab5e8d8a91c8cbcb5b6d02ae14188f287bf600c0d5 |
Close
Hashes for piston_rspy-0.2.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c39c5a962a66da49f27d076f1b9ce989d3b381fb5ee5d7697354693355aa9e4 |
|
MD5 | a5a89298971d21570198fb7d72c55799 |
|
BLAKE2b-256 | 42b15f4856f1bdc594e9fc1a7aaaab7c44d7082762ea35894868d33a3a42273b |
Close
Hashes for piston_rspy-0.2.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 260ea654aa60b3b655b56bdb86cb0e68ef48018618663e92b9f99c779142eb25 |
|
MD5 | 759796610a6662de3a6b2baf11baeaf5 |
|
BLAKE2b-256 | e4e9e6fe0f4940285664f433f124dc27bca245dd0a53fa80f12692bae71b682a |
Close
Hashes for piston_rspy-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36fc2f762a36cac70d065c7ed879991e1a15d2eb080be7626307c1f621132638 |
|
MD5 | e3e30c89c34fd67ca44713f1b84fbd28 |
|
BLAKE2b-256 | d097310029c2366b725ac9dae97441970b9dfdbbada8a4d2f2672773c827e996 |
Close
Hashes for piston_rspy-0.2.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 783022b32e2720656cf4fabec9510c85c913a3a33b4c3fb19c60d62bac1ab98b |
|
MD5 | 4d4168452878c5b1991053c1d847348d |
|
BLAKE2b-256 | 470b4f607ea9e2c1f807ec8f38082b241e8d48872504709025d71bd23c7c7dbb |
Close
Hashes for piston_rspy-0.2.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34c3c904a5d00ff31f72ef40f10574b29f62e2678fadf2519b0cd8634d6d44cc |
|
MD5 | 4717dd219cbcdf649ee42d2700fcccf8 |
|
BLAKE2b-256 | 2dcba32930668aac5522bb6f0bcce0023220ce0611293181e72163368514ecf9 |
Close
Hashes for piston_rspy-0.2.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 076433c2c066d1ad17eb13b4a0fce1d93808db2145e1a40fdeb8498ea0e9ebce |
|
MD5 | d67460eaad205f5644c01a283d4d9828 |
|
BLAKE2b-256 | a03df51444b34ae7f65b6b135392444d60b741a7446fd2d992437bff0e4ddefc |
Close
Hashes for piston_rspy-0.2.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56b235c2f874e13bf61d3e2ebc5d2bef442d6b5922f1f4fd27b98b2398e6b200 |
|
MD5 | 98ad86e12f95ee8d10ef031e5938ccb4 |
|
BLAKE2b-256 | 7997d2b67123641c36d1b8cfe7ef102fc638f2e335c1ce743c34bb075dc0ac75 |
Close
Hashes for piston_rspy-0.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 648d19c9fb2a10c28d0862ed58c4e0a6b7646f2e78c27eb416475a3fc0aae790 |
|
MD5 | b6bb4ac9dcfc0923cefe6424c5611354 |
|
BLAKE2b-256 | d9408a9f8b99143a4ef921c452c04f1fb7a636d2afd33b1bd4c671871899a23f |
Close
Hashes for piston_rspy-0.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e703f6a4e2dd0e6941dfe8cb20b7655edcb62493f59d59dadfd4310738547e2b |
|
MD5 | 9c531c36ea18fa2d3d478776f21ebffb |
|
BLAKE2b-256 | 61aece1decaeb384e351d5fea8fea0d71e3ef1d5ecf68f29325a2377eceb5bea |
Close
Hashes for piston_rspy-0.2.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ab35148e68c872b4392bd73da893ab9d57d05a4c3ddf506821eea6a6339feee |
|
MD5 | fe46695ca0338b4c35d4cbf340f8cd0a |
|
BLAKE2b-256 | b5266dfdca9486678b7535e62db3e6fcf72ce42e3ba2677c0c7195f72d85df90 |
Close
Hashes for piston_rspy-0.2.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5727b72f5078676c6fa5e3742d91c6f5727726b70b34efd864508ba039e0b3b5 |
|
MD5 | 4956df2401d7894f7016282c6df9a9bb |
|
BLAKE2b-256 | 84015c64ba69a7054f8aac480b817de600fa284c0ed6d05d348ffdb15233d201 |