ใน Python บางครั้งเรามีลิงก์เอาต์พุตและต้องการเคลียร์หน้าจอใน cell prompt เราสามารถเคลียร์หน้าจอได้โดยกด Control + l แต่มีสถานการณ์ที่เราต้องเคลียร์หน้าจอด้วยโปรแกรม (programmatically) ขึ้นอยู่กับปริมาณเอาต์พุตจากโปรแกรมและวิธีที่เราต้องการจัดรูปแบบเอาต์พุท ในกรณีเช่นนั้น เราต้องใส่คำสั่งบางอย่างในสคริปต์ Python ซึ่งจะเคลียร์หน้าจอเมื่อโปรแกรมต้องการ
เราต้องการ system() จากโมดูล OS ของ Python เพื่อเคลียร์หน้าจอ สำหรับแพลตฟอร์มที่แตกต่างกัน เช่น Windows และ Linux เราต้องส่งคำสั่งที่แตกต่างกัน ตามที่แสดงในตัวอย่างด้านล่าง ยังใช้ตัวแปร '_' ซึ่งใช้เก็บค่าของนิพจน์ล่าสุดใน interpreter
ตัวอย่าง
import os
from time import sleep
# ฟังก์ชันเคลียร์หน้าจอ
def screen_clear():
# สำหรับ mac และ linux (os.name คือ 'posix')
if os.name == 'posix':
_ = os.system('clear')
else:
# สำหรับแพลตฟอร์ม windows
_ = os.system('cls')
# พิมพ์ข้อความบางส่วน
print("The platform is: ", os.name)
print("big output\n" * 5)
# รอ 5 วินาทีเพื่อเคลียร์หน้าจอ
sleep(5)
# เรียกฟังก์ชันที่เรากำหนดด้านบน
screen_clear()
ผลลัพธ์
การรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้:
The platform is: nt big output big output big output big output big output
เอาต์พุทข้างต้นจะถูกเคลียร์หลังจาก 5 วินาทีจากหน้าต่างผลลัพธ์