2016-07-24 92 views
-2

所以我在LPTHW的ex41上,但我在Python 3而不是Python 2中做了它我修复了大部分错误,但是我在这一块上打了一堵砖墙 - 当我运行我的代码时,它只是在PowerShell中一片空白,然后当我按CTRL-C它给了我这个错误:代码卡住了?

http://pastebin.com/iVCmCAWG

我的代码:

http://pastebin.com/5XPNGJe6

任何帮助/建议将不胜感激!

回答

0

我修复了这个问题,感谢learnpython subreddit的帮助,并且在这里,我意识到我的程序只会在我将args“english”传递给powershell的情况下运行。这是因为如果将PHRASE_FIRST设置为True(这是在PowerShell中通过英文arg的时候),最后的while循环才会打印出来。

因此,我不得不在Powershell中传递参数但不想以英文 - >代码形式运行它的情况下添加else语句。

所以基本上,我的补充是:

else: 
    print(question) 

    input("> ") 
    print("ANSWER: {0}\n\n".format(answer)) 

后if语句

0

命中CTRL-C告诉Powershell停止执行程序,产生KeyboardInterrupt错误。

程序中的注释提到了以下几点:

# Keep going until they hit CTRL-D

含义你必须与CTRL-D退出。这似乎不起作用,所以退出CTRL-C是合乎逻辑的。该程序被打破在线

question, answer = convert(snippet, phrase) 

因为我们都得到了同样的错误。

我已经亲自退出了关于Ex.25的教程。使用Python编写的项目测试更加有效,因为您可以研究程序员/开发人员用于项目的功能。

+0

对不起,我是不是在我的岗位不够具体,我整明白CTRL-C事情最后,但你会如何建议我修复这个错误? – Aaron

+0

@Aaron,第77行是'while True:'。切换到'范围内的我(0,20):'将运行20次而不是永久的功能。 –