Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menggantikan Output Konsol dengan Counter dan Bar Kemajuan dalam Python?

Bagaimana untuk Menggantikan Output Konsol dengan Counter dan Bar Kemajuan dalam Python?

Patricia Arquette
Lepaskan: 2024-11-03 14:51:30
asal
215 orang telah melayarinya

How to Replace Console Output with a Counter and Progress Bar in Python?

Menggantikan Output Konsol dalam Python

Sifat serba boleh Python membolehkan output konsol tersuai disesuaikan dengan keperluan khusus. Satu teknik biasa ialah mencipta pembilang konsol dinamik yang dikemas kini di tempatnya.

Pertanyaan: Menggantikan Output dengan Pembilang

Untuk menggantikan output konsol dengan pembilang kemajuan, gelung boleh diubah suai untuk memaparkan mesej status selepas melakukan setiap lelaran. Tidak seperti output sebelumnya, yang termasuk baris baharu untuk setiap status, kaunter ini akan mengemas kini hanya baris terakhir yang dipaparkan.

Penyelesaian: Menggunakan 'r'

Satu mudah penyelesaian melibatkan memasukkan aksara pengembalian kereta "r" sebelum mesej status baharu dan mengelakkan sebarang aksara baris baharu. Ini memastikan bahawa rentetan tidak menjadi lebih pendek, menjadikannya pendekatan yang berdaya maju jika rentetan dijangka kekal konsisten panjangnya.

Contohnya:

import sys

for i in range(5):
    sys.stdout.write("\rDoing thing %d" % i)
    sys.stdout.flush()
Salin selepas log masuk

Penyelesaian Dipertingkat : Bar Kemajuan

Untuk paparan kemajuan yang lebih canggih, bar kemajuan boleh dilaksanakan. Kod berikut menyediakan fungsi bar kemajuan mudah:

def start_progress(title):
    sys.stdout.write(title + ": [" + "-" * 40 + "]" + chr(8) * 41)
    sys.stdout.flush()
    progress_x = 0

def progress(x):
    global progress_x
    x = int(x * 40 // 100)
    sys.stdout.write("#" * (x - progress_x))
    sys.stdout.flush()
    progress_x = x

def end_progress():
    sys.stdout.write("#" * (40 - progress_x) + "]\n")
    sys.stdout.flush()
Salin selepas log masuk

Fungsi start_progress memulakan bar kemajuan dengan penerangan tajuk. progress(x) mengemas kini bar dengan peratusan siap (x). Akhir sekali, end_progress menamatkan paparan kemajuan.

Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Output Konsol dengan Counter dan Bar Kemajuan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan