การเปลี่ยนผลลัพธ์ใน Generator Expression
เยี่ยมมาก! ตอนนี้รู้วิธีเขียน generator expression พื้นฐานแล้ว ในแบบฝึกหัดนี้จะต่อยอดแนวคิดนั้นด้วยการปรับ output expression ของ generator expression ให้ซับซ้อนขึ้น เนื่องจาก generator expression และ list comprehension มีไวยากรณ์ที่คล้ายกันมาก งานนี้จึงน่าจะคุ้นเคยดีอยู่แล้ว!
มีลิสต์ของสตริงชื่อ lannister ให้ และให้ใช้ generator expression สร้าง generator object แล้ววนซ้ำเพื่อพิมพ์ค่าออกมา
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Python Toolbox
คำแนะนำการฝึกหัด
- เขียน generator expression เพื่อสร้างความยาวของแต่ละสตริงใน
lannisterโดยใช้personเป็นตัวแปรวนซ้ำ แล้วกำหนดผลลัพธ์ให้กับตัวแปรlengths - ระบุ iterable ที่ถูกต้องใน
forloop สำหรับพิมพ์ค่าออกมาจาก generator object
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create a list of strings: lannister
lannister = ['cersei', 'jaime', 'tywin', 'tyrion', 'joffrey']
# Create a generator object: lengths
lengths = ____
# Iterate over and print the values in lengths
for value in ____:
print(value)