เขียน generator expression ด้วยตัวเอง
ตอนนี้คุณรู้จัก generator และ generator expression แล้ว รวมถึงเข้าใจความแตกต่างจาก list comprehension ในแบบฝึกหัดนี้จะได้ฝึกสร้าง generator expression ด้วยตัวเอง
จำไว้ว่า generator expression มีไวยากรณ์แทบเหมือนกับ list comprehension ต่างกันเพียงแค่ใช้วงเล็บ () แทนวงเล็บก้ามปู [] เท่านั้น จึงคุ้นเคยได้ไม่ยาก นอกจากนี้ หากเคยวนซ้ำผ่าน dictionary ด้วย .items() หรือใช้ฟังก์ชัน range() มาก่อน แสดงว่าได้ใช้ generator ไปแล้วโดยไม่รู้ตัว เพราะ Python สร้าง generator ให้เบื้องหลังโดยอัตโนมัติ
เริ่มต้นด้วยการสร้าง generator object ที่ผลิตค่าตัวเลขกันก่อน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Python Toolbox
คำแนะนำการฝึกหัด
- สร้าง generator object ที่ผลิตค่าตั้งแต่
0ถึง30กำหนดผลลัพธ์ให้กับตัวแปรresultและใช้numเป็นตัวแปรสำหรับวนซ้ำใน generator expression - พิมพ์ค่า
5ตัวแรกโดยใช้next()ภายในprint()ให้เหมาะสม - พิมพ์ค่าที่เหลือทั้งหมดโดยใช้ลูป
forวนซ้ำผ่าน generator object
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create generator object: result
result = ____
# Print the first 5 values
print(____)
print(____)
print(____)
print(____)
print(____)
# Print the rest of the values
for value in ____:
print(value)