Hoppa till innehåll

Python-kod

Python körs via Pyodide — CPython kompilerat till WebAssembly — i en separat tråd. Ingen Python krävs på din maskin.

SymbolRoll
inputVärdet som tas emot på ingångsporten
varsEn ordbok med körningsvariablerna
print(...)Skriver till körningsloggen
Det sista uttrycketDess värde går ut på porten result
commandes = input["commandes"]
payees = [c for c in commandes if c["statut"] == "payee"]
total = sum(c["montant"] for c in payees)
print(f"{len(payees)} commandes payées, total {total} €")
{"nombre": len(payees), "total": total}

CPython:s standardbibliotek är tillgängligt: json, re, datetime, hashlib, base64, itertools, collections

import hashlib, hmac
signature = hmac.new(
vars["secret"].encode(),
input["corps"].encode(),
hashlib.sha256,
).hexdigest()
{"signature": signature}

Deklarera dem i rutans fält packages. De laddas ner från PyPI vid den första körningen, cachas, och läses sedan in offline.

En överskriden timeout eller ett stopp av körningen avbryter körningen med ett KeyboardInterrupt, och avslutar sedan tråden om det behövs.