代码运行 前提条件 在控制台完成沙箱模板创建。 在执行下文所有代码前,请先按照环境变量设置部分,完成环境变量设置。 运行代码 您可以使用 runcode 方法来在沙箱内置的 jupyter server 中执行代码。 python from e2bcodeinterpreter import Sandbox 注意:修改下面模板为您的模板名称或者模板id sandbox Sandbox.create(template"mytestcodetemplate") 默认执行python代码 response sandbox.runcode("print("hello")") 需要注意的是:e2bcodeinterpreter SDK目前不支持模版配置中的访问凭证,如果在沙箱中做代码执行类操作,请不要配置模版中的访问凭证。 如果您需要在沙箱中执行文件操作和命令操作等非代码执行类操作,请使用e2b SDK,该SDK支持模版中配置的访问凭证。 支持多种语言 您可以指定代码的语言,支持 python, javascript, typescript, java, r, bash。 python response sandbox.runcode( "console.log("hello")", "javascript" ) 创建代码执行上下文 默认情况下,每个语言会运行在其默认的上下文中,同一上下文共享变量。 您可以通过 createcodecontext 来创建上下文。 python ctx sandbox.createcodecontext(language"python") 您可以通过 context 参数来指定运行时上下文,需要注意,仅能设置 language 和 context 中的一个参数,两者互斥。 python response sandbox.runcode( "print("hello")", contextctx ) 代码执行流式返回 代码执行可以流式返回,您可以通过指定回调函数来接收流式返回的数据。 python pythonstreamcode """ import time for i in range(10): print(i, end'') time.sleep(1) """ sandbox.runcode( pythonstreamcode, onstdoutlambda data: print(data), onstderrlambda data: print(data), onresultlambda data: print(data), onerrorlambda data: print(data) )