Cara menampilkan output di baris yang sama dalam python

Cara menampilkan output di baris yang sama dalam python

Saat menulis skrip Python, mungkin ada contoh di mana Anda ingin menampilkan output di baris yang sama alih -alih memilikinya di baris baru setiap saat. Ini bisa sangat berguna saat membuat bilah kemajuan atau memperbarui output secara real time.

Dalam tutorial ini, kami akan membahas metode yang dapat Anda gunakan untuk menampilkan output di baris yang sama di Python.

Metode 1: Menggunakan akhir Argumen di mencetak() Fungsi

Itu mencetak() Fungsi dalam Python memungkinkan Anda menentukan karakter akhir yang mengikuti output. Secara default, ini diatur ke karakter baru \N, yang menyebabkan output ditampilkan pada baris baru. Untuk menjaga output di baris yang sama, kami dapat menentukan karakter akhir yang berbeda seperti ruang .

Inilah contohnya:

cetak ("halo,", end = ") cetak (" apa kabar?")
12cetak ("halo,", end = ") cetak (" apa kabar?")

Output kode ini adalah:

Output: halo, apa kabar? 

Seperti yang Anda lihat, kedua output ditampilkan di baris yang sama.

Metode 2: Menggunakan menyiram Argumen di mencetak() Fungsi

Cara lain untuk menampilkan output di baris yang sama adalah dengan menggunakan menyiram argumen di mencetak() fungsi. Argumen ini memberitahu Python untuk menyiram buffer output, yang berarti bahwa output ditampilkan segera alih -alih disimpan dalam buffer dan ditampilkan nanti. Untuk menggunakan argumen ini, Anda harus mengaturnya ke True.

Inilah contohnya:

impor sys cetak ("halo,", end = ", flush = true) print (" apa kabarmu?", flush = true)
123impor sysprint ("halo,", end = ", flush = true) print (" apa kabarmu?", flush = true)

Output kode ini akan sama seperti di Metode 1, Tetapi keuntungan menggunakan argumen flush adalah bahwa itu akan bekerja terlepas dari ukuran buffer output.

Metode 3: Menggunakan sys.stdout.menulis() metode

Cara lain untuk menampilkan output di baris yang sama adalah dengan menggunakan sys.stdout.menulis() metode. Metode ini menulis ke aliran output standar (sys.stdout) tanpa menambahkan karakter garis baru di akhir.

Inilah contohnya:

Impor sys sys.stdout.tulis ("halo,") sys.stdout.tulis ("apa kabar?")
123Impor syssys.stdout.tulis ("halo,") sys.stdout.tulis ("apa kabar?")

Output kode ini adalah:

Output: halo, apa kabar? 

Seperti yang Anda lihat, kedua output ditampilkan di baris yang sama.

Metode 4: Menggunakan carriage return (\R)

Metode keempat untuk menampilkan output di baris yang sama adalah dengan menggunakan carriage return (\R). Pengembalian kereta adalah karakter khusus yang menggerakkan kursor ke awal baris saat ini dan mengganti konten yang ada dengan konten baru.

Inilah contohnya:

Impor Waktu untuk I dalam kisaran (10): print ("\ r progress: %".format (i*10), end = ") waktu.tidur (1)
1234Impor Timefor i dalam kisaran (10): print ("\ r progress: %".format (i*10), end = ") waktu.tidur (1)

Output kode ini adalah:

Output: Kemajuan: 90% 

Seperti yang Anda lihat, bilah kemajuan ditampilkan di baris yang sama dan memperbarui setiap detik.

Kesimpulan

Dalam tutorial ini, kami membahas empat metode untuk menampilkan output di baris yang sama di Python. Anda dapat memilih metode yang paling sesuai dengan kebutuhan Anda berdasarkan jenis output dan tingkat kontrol yang Anda butuhkan selama output. Apakah Anda membuat bilah kemajuan atau hanya ingin memperbarui output secara real time, metode ini akan membantu Anda mencapai hasil yang Anda inginkan.

Penting untuk dicatat bahwa sys.stdout.menulis() metode dan \R Karakter adalah metode yang paling langsung untuk mengendalikan output di baris yang sama, karena memungkinkan Anda untuk menulis langsung ke aliran output standar. Di sisi lain, argumen akhir di mencetak() fungsi dan menyiram Argumen adalah metode yang lebih sederhana yang mungkin lebih mudah digunakan dalam beberapa kasus.

Sebagai kesimpulan, dengan metode ini, Anda sekarang dapat dengan mudah mengontrol tampilan output di Python, apakah Anda seorang pemula atau ahli. Cobalah metode ini dalam proyek Python Anda berikutnya dan lihat hasilnya sendiri!