เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การใช้เงื่อนไขใน comprehensions (1)

ที่ผ่านมาเราใช้ list comprehensions เพื่อสร้างรายการค่าต่าง ๆ บางครั้งก็มีการดำเนินการเพื่อสร้างค่าเหล่านั้นด้วย

หนึ่งในกลไกที่น่าสนใจของ list comprehensions คือสามารถกรองค่าให้เหลือเฉพาะที่ตรงตามเงื่อนไขที่กำหนดได้ วิธีหนึ่งคือการใช้เงื่อนไขกับตัวแปร iterator ซึ่งในแบบฝึกหัดนี้จะได้ลองทำสิ่งนั้นโดยตรง

จำได้จากวิดีโอว่าสามารถเพิ่มคำสั่ง if ในส่วน predicate expression ที่ต่อจาก for เพื่อทดสอบตัวแปร iterator ได้ดังนี้:

[ output expression for iterator variable in iterable if predicate expression ]

ให้ใช้รูปแบบนี้เพื่อเขียน list comprehension สำหรับแบบฝึกหัดนี้ โดยมีรายการ string ชื่อ fellowship ให้แล้ว และต้องใช้ list comprehension สร้างรายการที่มีเฉพาะสมาชิกใน fellowship ที่มีความยาว 7 ตัวอักษรขึ้นไปเท่านั้น

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python Toolbox

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ member เป็นตัวแปร iterator ใน list comprehension สำหรับเงื่อนไข ให้ใช้ len() เพื่อประเมินค่าตัวแปร iterator โดยต้องการเฉพาะ string ที่มีความยาว 7 ตัวอักษรขึ้นไปเท่านั้น

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Create a list of strings: fellowship
fellowship = ['frodo', 'samwise', 'merry', 'aragorn', 'legolas', 'boromir', 'gimli']

# Create list comprehension: new_fellowship
new_fellowship = [____ for ____ in fellowship ____]

# Print the new list
print(new_fellowship)
แก้ไขและรันโค้ด