แก้แล้ว: รายการความเข้าใจ

ฟังดูซับซ้อนใช่ไหม? นั่นคือความเข้าใจรายการ Python สำหรับคุณ คุณลักษณะที่มีประสิทธิภาพสูงนี้จะรวมการสร้างรายการไว้ในโค้ดบรรทัดเดียว เป็นแนวทางที่เรียบง่ายซึ่งปรับปรุงทั้งความเร็วและประสิทธิภาพ

ความเข้าใจในรายการเกี่ยวข้องกับการทำความเข้าใจส่วนประกอบของรายการและสร้างรายการใหม่จากรายการดั้งเดิม โดยจะรวมองค์ประกอบของการแมปและการกรองเพื่อสร้างรายการใหม่โดยอิงจากรายการที่มีอยู่ โดยมีเงื่อนไขเพิ่มเติม ส่วนประกอบหลักคือนิพจน์เอาท์พุต ลำดับอินพุต และภาคแสดงเสริม

new_list = [expression for member in iterable]

ก่อนที่เราจะเจาะลึกลงไปในการทำงานของ list comprehension เรามาทำความเข้าใจคำศัพท์กันก่อน:

นิพจน์เอาท์พุต:

นี่เป็นเหมือนส่วนปฏิบัติการของความเข้าใจในรายการ จะตัดสินใจว่ารายการใดจะเป็นส่วนหนึ่งของรายการใหม่ อาจเป็นอะไรก็ได้ตั้งแต่การดำเนินการทางคณิตศาสตร์ (เช่น ตัวเลขกำลังสอง) ไปจนถึงการจัดรูปแบบสตริง และอื่นๆ

ลำดับอินพุต:

ลำดับอินพุตช่วยให้เราสามารถกำหนดรายการหรือช่วงที่เราต้องการวนซ้ำได้

ภาคแสดงทางเลือก:

ส่วนนี้ช่วยให้เราใช้เงื่อนไขกับลำดับอินพุตได้ เช่น ตัวกรอง เงื่อนไขสามารถกรองรายการตามเกณฑ์ที่กำหนดได้

ลองพิจารณาตัวอย่างที่เราต้องการยกกำลังสองตัวเลขแต่ละตัวในรายการ หากไม่มี list comprehension เราจะต้องใช้ for loop:

numbers = [1, 2, 3, 4, 5]
squared = []

for num in numbers:
    squared.append(num ** 2)

print(squared)

แต่ด้วย list comprehension เราสามารถเขียนสิ่งนี้ได้อย่างง่ายดาย:

numbers = [1, 2, 3, 4, 5]
squared = [num ** 2 for num in numbers]

print(squared)

ตอนนี้ ลองพิจารณาตัวอย่างที่เราต้องการยกกำลังสองเฉพาะตัวเลขที่มากกว่า 2:

numbers = [1, 2, 3, 4, 5]
squared = [num ** 2 for num in numbers if num > 2]

print(squared)

สรุป

ความเข้าใจรายการ Python มอบโซลูชันที่กระชับและสวยงามสำหรับการสร้างรายการ มันเร็วกว่าและอ่านง่ายกว่า (เมื่อคุณคุ้นเคยแล้ว) มากกว่าลูปแบบเดิม ด้วยนิพจน์เอาท์พุต ลำดับอินพุต และเพรดิเคตเสริม คุณสามารถดำเนินการที่มีประสิทธิภาพและมีประสิทธิผลได้ในโค้ดบรรทัดเดียว ความเข้าใจในรายการ Python เป็นข้อพิสูจน์ว่าในการเขียนโค้ด ไม่ค่อยมีความกระชับและประสิทธิภาพไม่สอดคล้องกัน

โปรดตรวจสอบให้แน่ใจว่าได้กำหนดขอบเขตบล็อกโค้ด Python ด้วย ทำเครื่องหมายรายการด้วย

  • และใช้ แท็กสำหรับคำหลักเพื่อให้เป็นไปตามข้อกำหนด SEO และความสะดวกของผู้อ่าน คุณไม่จำเป็นต้องติดป้ายกำกับ “บทนำ” หรือ “บทสรุป” อย่างชัดเจน และอย่าลืมเพิ่ม แท็กหลังย่อหน้าแรก ขอให้มีความสุขในการเขียนโค้ด!
กระทู้ที่เกี่ยวข้อง:

แสดงความคิดเห็น