【发布时间】:2016-07-20 16:44:02
【问题描述】:
您将如何制作 IDLE shell,只使用 Python 代码?现在,我理解了开始,就像一个简单的 exec(raw_input('>> ')),但是你将如何获得 if 和 else 语句,或者 for 和 while 循环工作?
而 1==1:
被视为无效语法。您将如何防止这种情况发生?
建议的线程与所有答案几乎不是一回事,而是一个答案如何从 python 程序运行 python 程序。其中一个答案有点像我要问的,但它仍然会在 if 和 else 语句、while 或 for 循环中失败。
【问题讨论】:
-
什么意思,
while 1==1:是无效的语法?完全没问题。试玩的时候忘记放循环体了吗? -
如果我必须在 Python 中制作 IDLE shell,它可能看起来像这样 github.com/python/cpython/tree/master/Lib/idlelib
-
@user2357112 我的意思是,如果我的代码是 exec('while 1==1:'),它会引发错误。这意味着在制作 shell 时,我不能让它执行原始输入。