Kód Python
Python běží přes Pyodide — CPython zkompilovaný do WebAssembly — v odděleném vlákně. Na vašem počítači není potřeba žádný Python.
| Symbol | Role |
|---|---|
input | Hodnota přijatá na vstupním portu |
vars | Slovník proměnných běhu |
print(...) | Zapisuje do logu běhu |
| Poslední výraz | Jeho hodnota odchází na port result |
Příklad
Section titled “Příklad”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}Standardní knihovna
Section titled “Standardní knihovna”Standardní knihovna CPythonu je k dispozici: json, re, datetime,
hashlib, base64, itertools, collections…
import hashlib, hmac
signature = hmac.new( vars["secret"].encode(), input["corps"].encode(), hashlib.sha256,).hexdigest()
{"signature": signature}Externí balíčky
Section titled “Externí balíčky”Deklarujte je v poli packages daného bloku. Při prvním běhu se stáhnou z PyPI,
uloží se do mezipaměti a poté se načítají offline.
Zastavení a časový limit
Section titled “Zastavení a časový limit”Překročení timeout nebo zastavení běhu přeruší provádění výjimkou
KeyboardInterrupt a v případě potřeby vlákno ukončí.