【发布时间】:2014-03-03 09:45:02
【问题描述】:
是否可以将 Python 编译器连接到一个名为“运行”的按钮?使用 Python 3 的 PQT4,我有一个运行按钮和一个文本编辑器,当用户单击运行时,我希望检查并编译文本编辑器中的所有代码。这可能吗?有这样的代码示例吗?
提前致谢!
【问题讨论】:
是否可以将 Python 编译器连接到一个名为“运行”的按钮?使用 Python 3 的 PQT4,我有一个运行按钮和一个文本编辑器,当用户单击运行时,我希望检查并编译文本编辑器中的所有代码。这可能吗?有这样的代码示例吗?
提前致谢!
【问题讨论】:
您是否尝试在交互式解释器实例中运行代码? Interactive Console Objects
交互式控制台对象说明
当您导入类并创建一个新实例时,您可以在不中断主要 python 线程的情况下运行代码。
from code import InteractiveInterpreter
code1 = """
def foo():
print notDefined
foo()
"""
code2 = """
def baz(spam):
print spam
baz('eggs')
"""
interpreter = InteractiveInterpreter()
interpreter.runcode(code1)
interpreter.runcode(code2)
输出:
Traceback (most recent call last):
File "<string>", line 5, in <module>
File "<string>", line 3, in foo
NameError: global name 'notDefined' is not defined
eggs
【讨论】: