ループ内で 1 行以上印刷する必要があります (Python 3.x)。すでにSOを見回して、コードに次の行を入れました:
print('{0} imported\r'.format(tot),)
ただし、ループすると複数の行が出力されます。私も試してみました
sys.stdout.write('{0} imported\r'.format(tot))
しかし、これはコンソールに何も出力しません...
これで何が起こっているか知っている人はいますか?
ループ内で 1 行以上印刷する必要があります (Python 3.x)。すでにSOを見回して、コードに次の行を入れました:
print('{0} imported\r'.format(tot),)
ただし、ループすると複数の行が出力されます。私も試してみました
sys.stdout.write('{0} imported\r'.format(tot))
しかし、これはコンソールに何も出力しません...
これで何が起こっているか知っている人はいますか?
最初のケースでは、一部のシステムは\r
改行として扱います。2 番目のケースでは、あなたはflush
ラインを取りませんでした。これを試して:
sys.stdout.write('{0} imported\r'.format(tot))
sys.stdout.flush()
Levon が私に思い出させてくれたように、すべてのシステムでラインをフラッシュする必要はありませんが、\r
この方法を使用する場合は一般的に良い考えです。
Janのソリューションを使用することを好みますが、次のようにします。
values = range(0, 101)
for i in values:
print ("Complete: ", i, "%", end="\r")
print ()