在Windows 10上Python打印速度更快

时间:2018-12-06 20:58:17

标签: python windows cmd printing

我正在开发一个需要非常快速地打印到控制台的程序。

现在我正像这样打印

print("X", end="")

但是,似乎Windows命令行非常慢。有没有办法加快速度?还是可以推荐一个支持ANSI,字体大小不同,可以根据需要快速打印的命令行(〜4056行,每行每秒最多317个字符)?

谢谢。

1 个答案:

答案 0 :(得分:0)

让我们比较以下两个.bat脚本中所示的两种不同的打印概念(字符与线条,请参见下面的粗体说明):

@ECHO OFF
SETLOCAL EnableExtensions
if "%~1"=="" (
    set "_flush= "
) else (
    set "_flush=, flush=True"
)
set "_line=317"
:loop
if not "%time:~-2%"=="00" goto :loop
set "_t0=%time%"
python -c "for num in range(0,4096*%_line%): print('X', end=''%_flush%);"
set "_t1=%time%"
python -c "for num in range(0,4096): print('X'*%_line%, end=''%_flush%);"
set "_t2=%time%"
cls
echo %~f0 %* 
set _

结果表明

  • 一次打印个字符大约需要7秒钟(_t1 - _t0
  • 按照预先准备的行顺序打印相同的数据大约需要半秒钟(_t2 - _t1):
D:\bat\SO\53659583.bat
_flush=
_line=317
_t0=23:55:03,00
_t1=23:55:09,96
_t2=23:55:10,47