เมื่อใดก็ตามที่คุณดาวน์โหลดไฟล์หรือเริ่มเกม คุณจะเห็นแอนิเมชั่นที่สวยงามซึ่งจะอัปเดตตัวเองจนเสร็จสิ้น นี่คือแถบความคืบหน้า แถบความคืบหน้าเป็นองค์ประกอบกราฟิกที่ใช้เพื่อแสดงภาพความคืบหน้าของงาน เช่น การดาวน์โหลด การอัปโหลด หรือการถ่ายโอนไฟล์
แถบความคืบหน้ามีสองประเภท: กำหนดและไม่แน่นอน กำหนดแถบความคืบหน้าติดตามความคืบหน้าของงานเมื่อเวลาผ่านไป แถบความคืบหน้าที่ไม่แน่นอนทำงานอย่างไม่สิ้นสุดด้วยภาพเคลื่อนไหวแบบวนซ้ำ
การทำวิดีโอประจำวัน
ดังนั้นคุณจะสร้างแถบความคืบหน้าที่กำหนดในโปรแกรม Python CLI ได้อย่างไร
โมดูล tqdm คืออะไร?
tqdm เป็นโมดูลที่ดูแลโดย Casper da Costa-Luis เป็นหลักพร้อมกับสมาชิกอีกสิบคน tqdm มาจากคำภาษาอาหรับ taqaddum ซึ่งอาจหมายถึง 'ความคืบหน้า' และเป็นคำย่อของ 'ฉันรักคุณมาก' ในภาษาสเปน (te quiero demasiado)
การใช้โมดูล tqdm คุณสามารถสร้างแถบความคืบหน้าที่น่าสนใจและใช้งานได้ในเทอร์มินัลของคุณ ในการติดตั้งโมดูล tqdm ให้เปิดเทอร์มินัลแล้วรัน:
pip install tqdm
โมดูลเวลาคืออะไร?
โมดูลยูทิลิตี้มาตรฐานของ Python ประกอบด้วย โมดูลเวลา โดยค่าเริ่มต้น คุณจึงไม่ต้องติดตั้ง คุณสามารถใช้ฟังก์ชันสลีปที่มีให้ในโมดูลเวลาเพื่อเพิ่มการหน่วงเวลาให้กับแอปพลิเคชันของคุณ ซึ่งจะช่วยให้เห็นภาพความคืบหน้าของแถบ
คุณสามารถใช้โมดูลเวลาเพื่อดูวันที่และเวลา กำหนดเวลางาน และสร้างแอปพลิเคชันที่มีประโยชน์ เช่น a นาฬิกาปลุกธรรมดา หรือนาฬิกาจับเวลา
วิธีเพิ่มแถบความคืบหน้าและปรับแต่งมัน
แถบความคืบหน้าเริ่มต้นใช้งานง่าย และคุณสามารถปรับแต่งได้ด้วยตัวเลือกต่างๆ
1. แถบความคืบหน้าอย่างง่าย
คุณสามารถสร้างแถบความคืบหน้าอย่างง่ายได้โดยนำเข้าคลาส tqdm จากโมดูล tqdm และฟังก์ชันสลีปจากโมดูลเวลา ใช้ for loop และวนซ้ำ tqdm ในช่วงที่คุณต้องการ
ช่วงสามารถเป็นอะไรก็ได้สูงถึง 9e9 (เก้าพันล้าน) ส่งจำนวนวินาทีไปที่ฟังก์ชันสลีปเพื่อเพิ่มการหน่วงเวลาเพื่อให้คุณเห็นภาพและเห็นแถบความคืบหน้าในการดำเนินการ
คุณสามารถใช้แถบความคืบหน้าอย่างง่ายดังนี้:
from tqdm import tqdm
from time import sleep
for i in tqdm(range(100)):
sleep(.1)
แทนที่จะนำเข้า tqdm คุณสามารถนำเข้า trange จากโมดูล tqdm เพื่อรวม tqdm และ range และส่งพารามิเตอร์โดยตรง
from tqdm import trange
from time import sleep
for i in trange(100):
sleep(.1)
ผลลัพธ์ที่คุณได้รับจากการสร้างแถบความคืบหน้าอย่างง่ายมีลักษณะดังนี้:
ผลลัพธ์นี้รวมถึงเวอร์ชันกราฟิกและข้อความของความคืบหน้า พร้อมด้วยสถิติเวลา
2. แถบความคืบหน้าพร้อมข้อความอธิบาย
คุณสามารถเพิ่มป้ายกำกับอธิบายลงในแถบความคืบหน้าเพื่ออธิบายวัตถุประสงค์ได้ ส่งข้อความที่คุณต้องการให้แสดงเครื่องหมายคำพูดคู่เป็น the desc พารามิเตอร์:
for i in tqdm(range(0, 10), desc ="Progress: "):
sleep(.4)
ผลลัพธ์ที่คุณได้รับจากการเพิ่มข้อความคำอธิบายพร้อมกับแถบความคืบหน้าจะมีลักษณะดังนี้:
3. แถบความคืบหน้าพร้อมความกว้างที่กำหนดเอง
ตามค่าเริ่มต้น ความกว้างของแถบความคืบหน้าจะถูกตั้งค่าเป็นไดนามิกตามขนาดของหน้าต่างผลลัพธ์ คุณสามารถปรับแต่งได้ตามใจชอบด้วยความช่วยเหลือของ ncols พารามิเตอร์.
คุณสามารถใช้แถบความคืบหน้าด้วยความกว้างที่กำหนดเองได้ดังนี้:
for i in tqdm(range(0, 10), ncols = 100, desc ="Progress: "):
sleep(.1)
ผลลัพธ์ที่คุณได้รับจากการยืดความกว้างของแถบความคืบหน้าจะมีลักษณะดังนี้:
4. แถบความคืบหน้าโดยใช้ Color
คุณสามารถปรับแต่งสีของแถบความคืบหน้าได้โดยใช้พารามิเตอร์สี คุณสามารถทำได้สองวิธี:
- ชื่อสี: คุณสามารถใช้ชื่อของสี เช่น เขียว ดำ ฟ้า และอีกมากมาย
- รหัสฐานสิบหก: รหัสฐานสิบหกเป็นรูปแบบ ที่คอมพิวเตอร์เก็บสี คุณสามารถระบุสีฐานสิบหกด้วยแฮช (#) ตามด้วยอักขระ 6 ตัวในเลขฐานสิบหก (0-9, a-f) รหัสฐานสิบหก #000000 หมายถึงสีดำในขณะที่ #ffffff หมายถึงสีขาว โดยการเปลี่ยนความเข้มของตัวเลขเหล่านี้ คุณจะได้เฉดสีที่ต่างกัน คุณสามารถใช้ เครื่องมือเลือกสีจาก Google เพื่อเลือกและวางสีรหัสฐานสิบหก
คุณสามารถใช้แถบความคืบหน้าด้วยสีที่กำหนดเองได้ดังนี้:
for i in tqdm(range(0, 100), colour="#00ffff", desc ="Progress: "):
sleep(.1)
ผลลัพธ์ที่คุณได้รับจากการเปลี่ยนสีของแถบความคืบหน้า:
5. แถบความคืบหน้าพร้อมช่วงเวลาขั้นต่ำ
คุณสามารถสร้างแถบความคืบหน้าที่อัปเดตด้วยช่วงเวลาต่ำสุดแทนการตั้งค่าเริ่มต้น คุณสามารถส่งผ่านตัวเลข เช่น 1.5 หรือ 2 ที่จะใช้เป็นช่วงเวลาระหว่างการอัปเดตสองครั้ง ค่าเริ่มต้นของช่วงเวลาต่ำสุดคือ 0.1
คุณสามารถใช้แถบความคืบหน้าโดยมีช่วงเวลาขั้นต่ำดังนี้:
for i in tqdm(range(0, 100), mininterval = 2, desc ="Progress: "):
sleep(.1)
ผลลัพธ์ที่คุณได้รับโดยการระบุช่วงเวลาต่ำสุดในแถบความคืบหน้า:
6. แถบความคืบหน้าโดยใช้อักขระ ASCII
คุณสามารถสร้างแถบความคืบหน้าโดยใช้อักขระ ASCII แทนแถบปกติที่คุณเห็นบนหน้าจอ ในการใช้อักขระ ASCII ให้ตั้งค่า ascii พารามิเตอร์ไปยังรูปแบบที่ต้องการ
หากคุณใช้บางอย่างเช่น 12345* แต่ละคอลัมน์ของช่วงจะวนซ้ำจากหนึ่งไปยังเครื่องหมายดอกจันตามลำดับ แม้ว่ามันจะเจ๋งและปรับแต่งได้ แต่ให้แน่ใจว่าได้ใช้งานที่เป็นมิตรต่อผู้ใช้เมื่อใช้งานในแอพพลิเคชั่นจริง
คุณสามารถใช้แถบความคืบหน้าโดยใช้อักขระ ASCII เป็น:
for i in tqdm(range(0, 100), ascii ="12345*"):
sleep(.1)
ผลลัพธ์ที่คุณได้รับโดยใช้อักขระ ASCII ในแถบความคืบหน้าจะมีลักษณะดังนี้:
7. แถบความคืบหน้าโดยใช้จุดเริ่มต้นที่ระบุ
แทนที่จะเริ่มแถบความคืบหน้าจากศูนย์ คุณสามารถตั้งค่าจุดเริ่มต้นเฉพาะสำหรับแถบความคืบหน้าได้ ส่งค่าเริ่มต้นเช่น 50 ไปที่ อักษรย่อ พารามิเตอร์.
คุณสามารถใช้แถบความคืบหน้าโดยใช้จุดเริ่มต้นเฉพาะดังนี้:
วิธีการโค้งข้อความใน adobe illustrator
for i in tqdm(range(0, 100), initial = 50, desc ="Progress: "):
sleep(.1)
ผลลัพธ์ที่คุณได้รับเมื่อเริ่มต้นแถบความคืบหน้า ณ จุดที่ระบุ:
8. แถบความคืบหน้าพร้อมจำนวนการวนซ้ำที่ระบุ
คุณสามารถสร้างแถบความคืบหน้าที่เรียกใช้การวนซ้ำตามจำนวนที่ระบุได้ หากคุณต้องการเรียกใช้การวนซ้ำ 500 ครั้งจาก 50,000 ครั้ง ให้ผ่าน 500 เป็นช่วง และ 50000 เป็นจำนวนการวนซ้ำทั้งหมดไปยัง ทั้งหมด พารามิเตอร์.
คุณสามารถใช้แถบความคืบหน้าได้โดยใช้การวนซ้ำตามจำนวนที่กำหนดดังนี้:
for i in tqdm(range(0, 500), total = 50000, desc ="Progress: "):
sleep(.1)
ผลลัพธ์ที่คุณได้รับโดยใช้แถบความคืบหน้าพร้อมจำนวนการวนซ้ำที่ระบุ:
การประยุกต์ใช้แถบความคืบหน้า
คุณจะเห็นแถบความคืบหน้าในสถานการณ์ต่างๆ เช่น การเล่นโปรแกรมเล่นสื่อหรือแสดงขั้นตอนผ่านแบบฟอร์มออนไลน์
แม้ว่าแถบแสดงความคืบหน้าจะดูสวยงาม แต่ก็เป็นงานสำคัญในการให้ข้อเสนอแนะแก่ผู้ใช้ในกรณีที่ผู้ใช้ไม่ได้ออกจากเว็บไซต์