【问题标题】:How to display and update remaining time in a single line如何在一行中显示和更新剩余时间
【发布时间】:2015-10-17 18:27:18
【问题描述】:

我有一个程序要求用户回答一些谜语,我想实现各种秒表。是否可以从 0 计数到 30,但要让秒数“彼此重叠”更新,使其不显示:

01
02
03
...

01 02 03 ...

但每次都会覆盖相同的两位数。我希望我能说清楚。

这是我目前所拥有的:

        start = time.time()
        elapsed = 0
        while elapsed < 30:
            elapsed = time.time() - start
            print "%02d" % elapsed
            time.sleep(1)

但这会在一列中打印秒数。我想像上面描述的那样显示它,以便提示“你的答案:”总是在同一个地方。

【问题讨论】:

标签: python-2.7


【解决方案1】:

如果此程序在命令行中输出,则无法覆盖数字。命令行输出未设置为动态。

现在您似乎正在通过命令行输入和打印变量。一旦您对 python 感到满意,您可能想要考虑使用框架 (What is a Framework?),例如 Django 用于您的 python 项目。您可以创建一个可以在一个位置更新计时器的应用程序,而不是将程序的用户界面限制在命令行中。

如果您的用户界面不是命令行,您应该将打印语句移到 while 循环之外并在其他地方实现打印。

【讨论】:

    猜你喜欢
    • 2014-08-14
    • 1970-01-01
    • 2020-06-27
    • 1970-01-01
    • 1970-01-01
    • 2021-11-04
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多