LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 4051|回复: 7

python 如何重复地在一行输出数据?

[复制链接]
发表于 2007-10-10 23:04:05 | 显示全部楼层 |阅读模式
我希望 python 的输出结果只在一行上不断地刷新显示,要实现两点:

一、输出结果1,过几秒钟再在同一行的结果1后,空格,再输出结果2。类推。(追加显示)

二、输出一定数目(比如5个)的结果后,清除此行,然后在清除掉的该行显示结果6,追加到10。以后类推。(刷新显示)

请问用什么语句可以实现这个呢?要什么模块吗?
发表于 2007-11-23 22:25:07 | 显示全部楼层
顶上,我也想知道…
回复 支持 反对

使用道具 举报

发表于 2007-11-30 17:25:49 | 显示全部楼层
怎么清除掉上一行不知道,但追加显示不不定不难!!
回复 支持 反对

使用道具 举报

发表于 2007-12-1 11:41:45 | 显示全部楼层
print '1',
print ' 2',
print ' 3'
这个print最后的','一定要加上。不然就会换行。
还有:
print '1',
print '\r2',
print '\r3'
就是在同一行的第一个位置上显示1,2,3。
回复 支持 反对

使用道具 举报

发表于 2007-12-3 13:39:22 | 显示全部楼层
print '1',
print '\b\b2',
print '\b\b3',
...
回复 支持 反对

使用道具 举报

发表于 2009-5-13 16:25:19 | 显示全部楼层
print '1',
print '2',
print '3'

不会换行的
回复 支持 反对

使用道具 举报

发表于 2009-5-13 17:05:42 | 显示全部楼层
#!/usr/bin/python
#coding=utf-8
#print_cls.py
import os
import time

str1=""
for i in range(20):
    os.system( "/usr/bin/clear")
   
    if i % 5 == 0 :        
        str1=""

    str1+=" "+str(i+1)
    print str1
    time.sleep(1)


在debian lenny ,python 2.5 上执行通过
回复 支持 反对

使用道具 举报

发表于 2009-5-14 12:52:29 | 显示全部楼层
应该是重复的向
sys.stdout写字符
我在emerge的源码里看到过,不过现在找不到了

基本思路是
s = '/|\-/|\'

for ss in s:
    sys.stdout.write('退格+ss')

哈哈
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表