bokeh.application.handlers.code_runner#

为处理程序提供一个实用程序类 CodeRunner,用于执行 Python 源代码。

class CodeRunner(source: str, path: str | PathLike[str], argv: list[str], package: ModuleType | None = None)[source]#

编译并运行 Python 源代码。

__init__(source: str, path: str | PathLike[str], argv: list[str], package: ModuleType | None = None) None[source]#
参数:
  • source (str) – 包含要执行的 Python 源代码的字符串

  • path (str) – 用于任何调试或错误输出的文件名

  • argv (list[str]) – 字符串参数列表,在代码执行时作为 sys.argv 提供

  • package (bool) – 可选的包模块配置

引发:

ValueError, 如果为 __init__.py 指定了 package

new_module() ModuleType | None[source]#

创建一个新的模块来运行。

返回值:

模块

reset_run_errors() None[source]#

清除先前运行中的任何瞬时错误情况。

返回值

None

run(module: ModuleType, post_check: Callable[[], None] | None = None) None[source]#

在一个模块中执行配置的源代码,并运行任何后检查。

参数:
  • module (Module) – 在其中执行配置代码的模块。

  • post_check (callable, optional) – 如果代码执行后未满足预期的后置条件,则引发异常的函数。

property doc: str | None#

文档字符串的内容,如果代码包含文档字符串。

property error: str | None#

如果代码执行失败,可能包含相关的错误消息。

property error_detail: str | None#

如果代码执行失败,可能包含回溯或其他详细信息。

property failed: bool#

如果代码执行失败,则为 True

property path: str | PathLike[str]#

新模块将配置的路径。

property source: str#

配置的源代码,将在调用 run 时执行。