Python程序在某些终端中挂起但不在其他终端中挂起

时间:2014-10-29 05:28:23

标签: python shell

我正在开发一个使用 cmd 制作交互式解释器的Python程序。其中一个命令导致程序挂起,但仅限于某些终端。我在Linux上尝试了几个不同的终端,并遇到了所有这些问题。但是,每当我尝试在 IDLE PyCharm 中运行时,我都没有任何问题,而且行为符合预期。

我能找到的唯一相关帖子是Invoking python under CygWin on Windows hangs中的第一个回复。这似乎可能是一个类似的问题,但解决方案不会有太大帮助。

以下代码可以重现该问题。命令应按此顺序运行:加载,填充,提交。它会挂起提交(取决于终端)。

import cmd
import spynner

b = spynner.Browser(debug_level = spynner.DEBUG)

class Loop(cmd.Cmd):
    def do_load(self, line):
        b.load("http://joshcurl.com/test/")
        b.load_jquery(True)
    def do_fill(self, line):
        b.fill("input[name=%s]" % "name", "joshua")
    def do_submit(self, line):
        b.submit("input[value=%s]" % "Submit")
    def do_show(self, line):
        print b.html
    def do_EOF(self, line):
        return True

if __name__ == '__main__':
    Loop().cmdloop()

一般来说,“标准”Linux终端与IDLE和PyCharm等终端之间有什么不同可能导致这样的行为不同吗?

0 个答案:

没有答案