Use this file to discover all available pages before exploring further.
The Code Interpreter SDK allows you to execute code in multiple programming languages within an OpenSandbox environment. This guide demonstrates how to run Python, Java, Go, and TypeScript code.
docker pull sandbox-registry.cn-zhangjiakou.cr.aliyuncs.com/opensandbox/code-interpreter:v1.0.1# Or use Docker Hub# docker pull opensandbox/code-interpreter:v1.0.1
Run Python code and capture both output and return values:
# Python example: show runtime info and return a calculation py_exec = await interpreter.codes.run( "import platform\n" "print('Hello from Python!')\n" "result = {'py': platform.python_version(), 'sum': 2 + 2}\n" "result", language=SupportedLanguage.PYTHON, ) print("\n=== Python example ===") for msg in py_exec.logs.stdout: print(f"[Python stdout] {msg.text}") if py_exec.result: for res in py_exec.result: print(f"[Python result] {res.text}")
Output:
=== Python example ===[Python stdout] Hello from Python![Python result] {'py': '3.14.2', 'sum': 4}
3
Execute Java code
Run Java code snippets without boilerplate:
# Java example: print to stdout and return the final result java_exec = await interpreter.codes.run( "System.out.println(\"Hello from Java!\");\n" "int result = 2 + 3;\n" "System.out.println(\"2 + 3 = \" + result);\n" "result", language=SupportedLanguage.JAVA, ) print("\n=== Java example ===") for msg in java_exec.logs.stdout: print(f"[Java stdout] {msg.text}") if java_exec.result: for res in java_exec.result: print(f"[Java result] {res.text}") if java_exec.error: print(f"[Java error] {java_exec.error.name}: {java_exec.error.value}")
Output:
=== Java example ===[Java stdout] Hello from Java![Java stdout] 2 + 3 = 5[Java result] 5
4
Execute Go code
Run complete Go programs with main function:
# Go example: demonstrate a main function structure go_exec = await interpreter.codes.run( "package main\n" "import \"fmt\"\n" "func main() {\n" " fmt.Println(\"Hello from Go!\")\n" " sum := 3 + 4\n" " fmt.Println(\"3 + 4 =\", sum)\n" "}", language=SupportedLanguage.GO, ) print("\n=== Go example ===") for msg in go_exec.logs.stdout: print(f"[Go stdout] {msg.text}") if go_exec.error: print(f"[Go error] {go_exec.error.name}: {go_exec.error.value}")
Output:
=== Go example ===[Go stdout] Hello from Go!3 + 4 = 7
5
Execute TypeScript code
Run TypeScript with full type support:
# TypeScript example: use typing and sum an array ts_exec = await interpreter.codes.run( "console.log('Hello from TypeScript!');\n" "const nums: number[] = [1, 2, 3];\n" "console.log('sum =', nums.reduce((a, b) => a + b, 0));", language=SupportedLanguage.TYPESCRIPT, ) print("\n=== TypeScript example ===") for msg in ts_exec.logs.stdout: print(f"[TypeScript stdout] {msg.text}") if ts_exec.error: print(f"[TypeScript error] {ts_exec.error.name}: {ts_exec.error.value}") # Cleanup await sandbox.kill()if __name__ == "__main__": asyncio.run(main())
Output:
=== TypeScript example ===[TypeScript stdout] Hello from TypeScript![TypeScript stdout] sum = 6