玩蛇网提供最新Python编程技术信息以及Python资源下载!

Python倒计时效果用什么方法实现

我在尝试写个命令行的fm,但是碰到播放时间的适合遇到了问题,如何实现一个计时器,每次自减1秒后覆盖之前的print 输出
我想把歌曲总时间传入如下代码,封装个函数,但是如何覆盖上一次print的结果呢?

def remain(min)
    count = 0
    while (count < min):
        count += 1
        n = min - count
        time.sleep(1)
        print n   

先科普下,"\r" 表示光标回到行首(参考自ascii编码表)。利用它就能达到覆盖字符的效果,但前提是别换行(消灭\n)。
来吧~ 看吾主的神迹。

pythonline = "============================="
print(line + "\r" + line, end='');print("\r" + line + "\r" + line)

再补充个进度条demo

pythonimport time
lineLength = 20
delaySeconds = 0.05
frontSymbol = '='
frontSymbol2 = ['—', '\\', '|', '/']
backSymbol  = ' '

for i in range(10):
    lineTmpla = "{:%s<%s} {} {:<2}"%(backSymbol, lineLength)
    for j in range(lineLength):
        tmpSymbol = frontSymbol2[j%(len(frontSymbol2))]
        print("\r" + lineTmpla.format(frontSymbol * j, tmpSymbol, j), end='')
        time.sleep(delaySeconds)

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd18630.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年05月22日 - 08时40分31秒 发布自玩蛇网

您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules