前の印刷出力の上書き: FTP ダウンローダーの進行状況表示の強化
FTP ダウンローダーの作成プロセスでは、進行状況の表示があることが望ましいですこれは継続的に更新され、同じ行にある以前の出力を上書きします。ファイルをダウンロードし、複数の印刷行が乱雑になることなく、その進行状況をリアルタイムで監視したいというシナリオを想像してください。
進行状況の表示を処理するために使用される最初のコードは、次の構造に依存していました。
print(os.path.getsize(file_name) / 1024, 'KB / ', size, 'KB downloaded!')
これにより、進行状況が更新されるたびに新しい行が出力されます。前の行を上書きするという望ましい効果を実現するには、end キーワードを使用できます。修正されたコードは次のとおりです。
print(os.path.getsize(file_name) / 1024, 'KB / ', size, 'KB downloaded!', end='\r')
ここでの決定的な違いは、print ステートメントの最後に end='r' が追加されていることです。デフォルトでは、print() 関数は出力の末尾に改行文字 (n) を追加します。ただし、end='r' を使用すると、この改行は代わりにキャリッジ リターン (r) に置き換えられます。
キャリッジ リターンを使用すると、カーソルは新しい行を作成せずに現在の行の先頭に戻ります。これにより、後続の進行状況の更新によって前の行が上書きされ、動的な進行状況表示が効果的に作成されます。
このアプローチは Python 3.x と互換性があることに注意してください。 Python 2.6 の場合、キーワード引数を使用して拡張された print() 関数を使用するには、ファイルの先頭に __future__ import print_function の行を含める必要がある場合があります。
この簡単な変更を組み込むことで、合理化された複数行の出力でユーザーを圧倒することなく、常に情報を提供できる進行状況表示。
以上が動的 FTP ダウンローダーの進行状況表示の以前の印刷出力を上書きする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。