设为首页收藏本站

LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区!

 找回密码
 注册

QQ登录

只需一步,快速开始

#公告#抱歉,网站将关闭,不再开放。由于PC时代已远逝 。在这个后移动互联网时代,我们继续携手前行,保持对技术的热情。共同构建linuxtone知识星球欢迎加入,一起讨论技术、招聘人才、分享资源。请新老linuxtone人 扫码移步到 知识星球:linuxtone

学习是一种信仰!分享是一种快乐!能力= 心态 * 沟通 * 知识 (你的每一天需要正能量!)

 网站的发展需要你贡献一份力量!希望你能每天坚持看贴1小时,并回答网友的问题!祝你在浏览论坛的过程中取得进步!谢谢!linuxtone加油!大家加油! 友情提示: 你今天学习了吗?你今天进步了吗?少一点抱怨!多一点进步!Life is short ! Why not linuxtone ?  

网站的发展、感谢每位坛友的努力!

查看: 5506|回复: 8

[python] python倒计时 [复制链接]

Rank: 8Rank: 8

签到
242
注册时间
2011-2-23
最后登录
2012-9-26
在线时间
343 小时
阅读权限
90
积分
19843
帖子
304
主题
66
精华
0
UID
12131
发表于 2012-6-13 15:05:07 |显示全部楼层
想写个python倒计时

#!/usr/bin/env python
import time
count = 0
while (count < 10):
    ncount = 10 - count
    print ncount
    time.sleep(1)
    count += 1


输出是 :
10
9
8
7
6
5
4
3
2
1

我想输出的是

10  下次变成 9 再变。。。


咋写啊

Rank: 6Rank: 6

注册时间
2011-8-13
最后登录
2014-3-22
在线时间
80 小时
阅读权限
70
积分
9452
帖子
40
主题
4
精华
0
UID
15374
发表于 2012-6-13 16:02:18 |显示全部楼层
本帖最后由 envfull 于 2012-6-13 16:02 编辑

调用系统命令,清空

WINDOWS的话

os.system("cls")

LINUX的话
os.system("clear")

使用道具 举报

Rank: 8Rank: 8

注册时间
2009-5-4
最后登录
2014-6-11
在线时间
75 小时
阅读权限
90
积分
10002
帖子
260
主题
9
精华
0
UID
2847
发表于 2012-6-13 16:35:24 |显示全部楼层
都是你的代码,我就帮你加了2行,看看吧:


[root@Virtual ~]# cat 1.py
#!/usr/bin/env python
import time
import os

count = 0
while (count < 10):
    ncount = 10 - count
    os.system('clear')
    print ncount
    time.sleep(1)
    count += 1
[root@Virtual ~]#

使用道具 举报

论坛元老

LT fans

Rank: 8Rank: 8

注册时间
2011-5-31
最后登录
2019-7-22
在线时间
220 小时
阅读权限
90
积分
30041
帖子
243
主题
23
精华
0
UID
13960
发表于 2012-6-13 16:36:29 |显示全部楼层
想法和楼上一样

使用道具 举报

Rank: 8Rank: 8

注册时间
2011-2-23
最后登录
2012-9-26
在线时间
343 小时
阅读权限
90
积分
19843
帖子
304
主题
66
精华
0
UID
12131
发表于 2012-6-13 17:28:10 |显示全部楼层
clear了感觉不好
这个还行,就是flush有点问题,从9倒计时还不错,2位变1位就有问题了
for n in range(9,-1,-1):
            time.sleep(1)
            sys.stdout.write("\rRunnning ...Please wait...%d" % n)
            sys.stdout.flush()
        print '\r'

使用道具 举报

Rank: 2

注册时间
2012-8-9
最后登录
2012-8-10
在线时间
1 小时
阅读权限
20
积分
197
帖子
2
主题
0
精华
0
UID
34639
发表于 2012-8-9 18:33:39 |显示全部楼层
在网上发现了本帖子的方法
http://bbs.python520.com/forum.p ... p;tid=6890#lastpost
方法跟楼上的差不多,只是改了一点点。测试完美实现功能
  1. import time,sys
  2. for n in range(11,-1,-1):
  3.     time.sleep(1)
  4.     sys.stdout.flush()
  5.     sys.stdout.write("\r"+str(n)+" \r")
  6.     sys.stdout.flush()
复制代码

使用道具 举报

Rank: 8Rank: 8

注册时间
2011-2-23
最后登录
2012-9-26
在线时间
343 小时
阅读权限
90
积分
19843
帖子
304
主题
66
精华
0
UID
12131
发表于 2012-8-10 10:37:30 |显示全部楼层
likeyou 发表于 2012-8-9 18:33
在网上发现了本帖子的方法
http://bbs.python520.com/forum.php?mod=viewthread&tid=6890#lastpost
方法跟 ...

,很不错

使用道具 举报

论坛元老

烂代码生成器

Rank: 8Rank: 8

注册时间
2012-8-30
最后登录
2014-8-27
在线时间
110 小时
阅读权限
90
积分
18059
帖子
33
主题
4
精华
0
UID
35121
发表于 2013-5-16 17:57:39 |显示全部楼层
初学python,借鉴楼上几位的思路。
  1. #!/usr/bin/env python
  2. #-*- coding:utf-8 -*-

  3. import time
  4. import sys

  5. map((lambda x: (
  6.     time.sleep(1),
  7.     sys.stdout.write('\r倒计时:%s\r' % x),
  8.     sys.stdout.flush(),
  9.     )), map(str, range(9, -1, -1)))
复制代码

使用道具 举报

Rank: 8Rank: 8

注册时间
2011-12-12
最后登录
2015-5-12
在线时间
67 小时
阅读权限
90
积分
18580
帖子
83
主题
21
精华
0
UID
16530
发表于 2013-9-30 10:47:10 |显示全部楼层
  1. import os
  2. import time
  3. for x in sorted(range(11),reverse=True):
  4.     print '比赛结束倒计时: %s '  % x
  5.     time.sleep(1)
  6.     os.system('cls')
复制代码
虽然写的有点懒 功能也实现了

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

IT运维专家网感谢您的支持

合作联系: QQ:67888954/MSN:cnseek@msn.com/mail:netseek@linuxtone.org

Archiver|手机版|感谢所有关心和支持过LinuxTone的朋友们 转载本站内容请注明原作者名及出处 ( 京ICP备08103151 )   |

GMT+8, 2020-3-29 11:21 , Processed in 0.033527 second(s), 14 queries , Apc On.

Powered by Discuz! X2 Licensed

© 2001-2011 Comsenz Inc.

回顶部