【发布时间】:2014-05-03 20:50:41
【问题描述】:
编辑:链接的帖子没有解决这个问题,这仍然是一个悬而未决的问题。
我使用 iPython 在 Spyder 中执行以下程序:
import time
print "Please enter your name."
userName=raw_input();
print "Now let's wait a few seconds, {}.".format(userName)
time.sleep(1)
print "Did you lose your patience?"
它提示用户输入他们的姓名,然后(而不是打印第一行,等待,然后打印第二行),它暂停,然后同时打印最后两个打印语句的输出。
当我从命令行运行时,它按预期工作。那么有谁知道我可以做什么,以便脚本在 Spyder/iPython 中显示所需的行为(我在 Windows 7 中工作,Spyder 2.2.5 使用 Python 2.7 运行 iPython)。
请注意,因为当我从命令行运行时,我得到了预期的行为,Why is time.sleep pausing early? 的建议并不透明地适用,但也许很容易将该解决方案移植到这种情况下?此外,在 sleep 命令之前运行 'sys.stdout.flush()' 似乎没有任何作用。
【问题讨论】:
-
睡前尝试拨打
sys.stdout.flush()。 -
@vanza 什么都没做。
-
不相关:
raw_input接受prompt属性。用它代替print:userName = raw_input("Please enter your name.\n") -
@neuronet:首先,让它从命令行运行,以确保您的代码是正确的。那你可以试试
ipython,spyder,看看会不会坏事
标签: python time ipython spyder