Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何编写一个Python控制台程序可以像Linux中的top命令一样输出?_Python - Fatal编程技术网

如何编写一个Python控制台程序可以像Linux中的top命令一样输出?

如何编写一个Python控制台程序可以像Linux中的top命令一样输出?,python,Python,Linux中top命令的输出如下: 任务:总共158项,1项运行,157项睡眠,0项停止,0项僵尸 Cpu:6.3%us,3.2%sy,0.0%ni,89.9%id,0.2%wa,0.0%hi,0.2%si, 0.0%st Mem:8264212k总计、2637492k已用、5626720k空闲、299884k缓冲区交换:4192924k总计、0k已用、41924K空闲、, 2010332k缓存 PID用户PR NI VIRT RES SHR S%CPU%MEM TIME+命令 7178 mys

Linux中top命令的输出如下:

任务:总共158项,1项运行,157项睡眠,0项停止,0项僵尸 Cpu:6.3%us,3.2%sy,0.0%ni,89.9%id,0.2%wa,0.0%hi,0.2%si, 0.0%st Mem:8264212k总计、2637492k已用、5626720k空闲、299884k缓冲区交换:4192924k总计、0k已用、41924K空闲、, 2010332k缓存

PID用户PR NI VIRT RES SHR S%CPU%MEM TIME+命令
7178 mysql 15 0 52876 31m 4680 S 21.3 0.4 308:12.04 mysql
2262 www 16 0 28092 11m 4764 S 4.0 0.1 2:02.31 php cgi
2110 www 16 0 27956 11m 4888 S 3.7 0.1 2:04.51 php cgi
2005 www 16 0 28680 12m 4872 S 3.0 0.2 2:04.10 php cgi
1955 www 16 0 28476 12m 5220 S 2.7 0.1 2:06.51 php cgi
2030 www 16 0 28260 11m 4872 S 2.0 0.1 2:05.27 php cgi
7044 www 15 0 24348 19m 932 S 0.7 0.2 1:58.38 nginx

只有部分内容在不断变化

我只能输出一行不断变化的内容,没有换行:

import  sys
import  time

if __name__ == '__main__':
    i = 0
    while True:
        sys.stdout.write('i = %d.\r' % i)
        sys.stdout.flush()
        time.sleep(1)
        i += 1
我想知道如何像top命令一样输出多行(在没有换行符的情况下不断变化)

对不起,我的英语很差。希望这是有道理的

谢谢,
Qi

您需要使用一个库来处理与控制台的交互,例如