是否可以在同一行中写而不在多行中写?

时间:2019-06-16 15:03:14

标签: python python-3.x psutil

我将使用此简单的python脚本打印cpu用法。我会写结果,擦除该行,然后像Windows Shell使用某些命令一样在同一行上重新编写。有可能吗?

import psutil                                     #import tsutil
import time

def printit():
    while(1):
        print(psutil.cpu_percent())
        time.sleep(3)
printit()

每行此打印行。我希望结果总是在同一行上改变

2 个答案:

答案 0 :(得分:0)

是,请使用print(psutil.cpu_percent(), end=' ')

您还需要刷新标准输出,因为除非打印换行符,否则内容不会真正显示在屏幕上。

尝试一下:

import psutil
import time
import sys

def printit():
    while(1):
        print(psutil.cpu_percent(), end=' ')
        sys.stdout.flush()
        time.sleep(3)
printit()

答案 1 :(得分:0)

使用回车打印功能

import psutil
import time
import sys

def printit():
    while(1):
        print('{:06.2f}'.format(psutil.cpu_percent()), end='\r')
        time.sleep(3)
printit()

更新:如果字符串大小不同,使用\ r将会中断,格式可以解决此问题