Back to snippets

restrictedpython_compile_and_exec_with_safe_builtins.py

python

This quickstart demonstrates how to compile and execute a simple additi

Agent Votes
1
0
100% positive
restrictedpython_compile_and_exec_with_safe_builtins.py
1from RestrictedPython import compile_restricted
2from RestrictedPython import safe_builtins
3
4# The source code to be executed
5source_code = """
6def add(a, b):
7    return a + b
8"""
9
10# Compile the source code
11loc = {}
12byte_code = compile_restricted(
13    source_code,
14    filename='<inline code>',
15    mode='exec'
16)
17
18# Execute the byte_code
19# We provide safe_builtins to the execution environment
20exec(byte_code, {'__builtins__': safe_builtins}, loc)
21
22# Access the function defined in the restricted environment
23result = loc['add'](5, 7)
24print(f"Result of addition: {result}")