รูปแบบการออกแบบ Python - Iterator

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

จะใช้รูปแบบตัววนซ้ำได้อย่างไร?

ตอนนี้เราจะดูวิธีใช้รูปแบบตัววนซ้ำ

import time

def fib():
   a, b = 0, 1
   while True:
      yield b
      a, b = b, a + b

g = fib()

try:
   for e in g:
      print(e)
      time.sleep(1)

except KeyboardInterrupt:
   print("Calculation stopped")

เอาต์พุต

โปรแกรมข้างต้นสร้างผลลัพธ์ต่อไปนี้ -

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

คำอธิบาย

รหัสหลามนี้เป็นไปตามรูปแบบตัววนซ้ำ ที่นี่ตัวดำเนินการส่วนเพิ่มจะใช้เพื่อเริ่มการนับ การนับจะสิ้นสุดลงเมื่อผู้ใช้ยุติการใช้งานอย่างมีประสิทธิผล