Gelagat lalai Python adalah untuk menimbal output, bermakna ia menyimpan teks dalam ruang sementara sebelum menghantarnya ke terminal. Ini dilakukan untuk meningkatkan prestasi dengan mengurangkan bilangan panggilan sistem yang diperlukan.
Apabila tiada talian baharu (n) disertakan pada penghujung a cetak kenyataan atau panggilan fungsi, teks disimpan dalam penimbal. Hanya apabila baris baharu ditemui atau penimbal menjadi penuh, teks akan disiram dan dipaparkan dalam terminal.
Dalam Python 2.x, pernyataan cetakan tidak mempunyai hujah flush. Untuk mengepam penimbal tanpa menambah baris baharu, pendekatan berikut boleh digunakan:
import sys for i in range(10): print '.', sys.stdout.flush()
Dalam Python 3.x, fungsi cetakan termasuk hujah kata kunci flush:
for i in range(10): print('.', end=' ', flush=True)
< ;h3>Melumpuhkan Penimbalan Talian
Untuk senario di mana pencetakan segera dikehendaki tanpa mengira kehadiran baris baharu, penimbalan talian boleh dilumpuhkan sama sekali. Ini boleh dicapai menggunakan:
Dengan melumpuhkan penimbalan, semua panggilan cetakan akan dipaparkan serta-merta dalam terminal tanpa memerlukan talian baharu atau curahan eksplisit.
Atas ialah kandungan terperinci Mengapa Keluaran Cetakan Tidak Muncul Serta-merta di Terminal Tanpa Talian Baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!