ในบทความนี้ เราจะเรียนรู้วิธีการนำ iterator ไปปฏิบัติและการใช้งานอย่างมีประสิทธิภาพใน Python 3.x (หรือเวอร์ชันก่อนหน้า) มาดูเมธอดต่างๆ ที่มีใน Python ซึ่งนำ iterator ไปปฏิบัติ
ประเภทที่ 1 - การนำ While Loop ไปปฏิบัติด้วยความยาวที่รู้จัก
ตัวอย่างโค้ด
genre = ("Python", "C", "C++", "Java")
print("หัวข้อที่มีใน Tutorial's Point คือ:")
i = 0
while (i < len(genre)):
print(genre[i])
i += 1
คำอธิบาย
เนื่องจากโครงสร้างที่ไม่กะทัดรัด วิธีนี้จึงไม่ได้รับความนิยม การจัดการข้อผิดพลาก็ยากในกรณีนี้ โปรแกรมหรือการออกแบบขนาดใหญ่ไม่ใช้วิธีนี้
ผลลัพธ์
หัวข้อที่มีใน Tutorial's Point คือ: Python C C++ Java
ประเภทที่ 2 - การนำ For Loop ไปปฏิบัติด้วยความยาวที่รู้จัก
ตัวอย่างโค้ด
genre = ("Python", "C", "C++", "Java")
print("หัวข้อที่มีใน Tutorial's Point คือ:")
for i in range(len(genre)):
print(genre[i])
คำอธิบาย
นี่คือวิธีที่โปรแกรมเมอร์ชอบใช้มากที่สุด ที่นี่ฟังก์ชัน range() ทำหน้าที่เป็นกลางในการเพิ่มหรือลด iterator โดยค่าเริ่มต้นเพิ่ม iterator ทีละ 1 หากเราระบุขั้นตอนของการเพิ่มหรือลด มันจะทำงานตามค่าขั้นตอนที่ให้มา
ผลลัพธ์
หัวข้อที่มีใน Tutorial's Point คือ: Python C C++ Java
ประเภทที่ 3 - การนำ For Loop ไปปฏิบัติโดยไม่มีความยาว
ตัวอย่างโค้ด
genre = ("Python", "C", "C++", "Java")
print("หัวข้อที่มีใน Tutorial's Point คือ:")
for i in genre:
print(i)
คำอธิบาย
วิธีนี้มักได้รับความนิยมในโครงสร้างข้อมูลเชิงเส้น เช่น lists, dictionary, tuples, n-dimensional arrays ฯลฯ Iterator เดินทางผ่านแต่ละองค์ประกอบของโครงสร้างที่ระบุและแสดงข้อมูลบนคอนโซล การเพิ่มเป็นอัตโนมัติในประเภทนี้
ผลลัพธ์
หัวข้อที่มีใน Tutorial's Point คือ: Python C C++ Java
ประเภทที่ 4 - การนำ Enumerate Data Type ไปปฏิบัติ
ตัวอย่างโค้ด
genre = ("Python", "C", "C++", "Java")
iterator = enumerate(genre)
print("หัวข้อที่มีใน Tutorial's Point คือ:")
for i, v in iterator:
print(v, end="\t")
คำอธิบาย
ในกรณีนี้ enumerate ช่วยสร้าง dictionary ที่ดัชนีเป็น keys และค่าใน List เป็นค่าที่สอดคล้องกัน ที่นี่เราต้องระบุ iterator สองตัว หนึ่งสำหรับดัชนี และอีกหนึ่งสำหรับค่าที่จะแสดง
ผลลัพธ์
หัวข้อที่มีใน Tutorial's Point คือ: Python C C++ Java
ประเภทที่ 5 - การนำ Zip Function ไปปฏิบัติ
ตัวอย่างโค้ด
genre = ("Python", "C", "C++", "Java")
extras = ["C#", "Dart", "Erlang", "Go"]
print("หัวข้อที่มีใน Tutorial's Point คือ:")
for i, j in zip(genre, extras):
print(i, j, sep="\t")
คำอธิบาย
ที่นี่เราระบุโครงสร้างข้อมูลเชิงเส้นสองชุด คือ list, array หรือ tuple ด้วยความช่วยเหลือของสอง iterator เพื่อทำเช่นนี้เราใช้ zip function ซึ่งมาในเวลาที่เหมาะสมสำหรับการจัดการสถานการณ์ต่างๆ มันนำโครงสร้างข้อมูลที่มีความยาวสั้นกว่าและข้ามเนื้อหาของโครงสร้างข้อมูลที่ยาวกว่า
ผลลัพธ์
หัวข้อที่มีใน Tutorial's Point คือ: Python C# C Dart C++ Erlang Java Go
สรุป
ในบทความนี้ เราได้เรียนรู้วิธีการนำ Stack และ Queue data structure ไปปฏิบัติใน Python 3.x (หรือเวอร์ชันก่อนหน้า) คุณสามารถนำอัลกอริทึมเดียวกันไปใช้สร้างโปรแกรมตรวจจับ stack/queue ในภาษาโปรแกรมอื่นได้