💡 หลาย ๆ คนที่เขียน Python มาสักพักแล้ว หรือบางคนเพิ่งเริ่มเขียน อาจจะยังไม่รู้จักการใช้งาน Iterator และ Iterable กันสักเท่าไหร่ หรือบางคนอาจจะใช้งานอยู่แล้ว แต่ยังไม่รู้ความหมายของมัน…
.
🔥 วันนี้แอดมาสรุปการใช้งาน Iterator และ Iterable มาให้เพื่อน ๆ อ่าน จะได้กระจ่างกันเลยว่าทั้งสองเนี่ยมันคืออะไร ใช้งานยังไง ถ้าพร้อมแล้วไปอ่านกันเลยยยยย!!
.
Iterable - Object ที่สามารถวนซ้ำได้ (List, Tuple, และ Strings ก็เป็น Iterable)
Iterator - ตัวที่ใช้วนซ้ำ
.
ประกอบด้วย Methods ดังนี้
🔹 __iter __ () - ใช้สร้าง Iterator เพื่อวนซ้ำใน Iterable
🔹 __next __ () - ใช้ดึงข้อมูลออกจาก Iterable
.
⚙️ การใช้งาน
iter() จะทำการสร้าง Iterator เพื่อกำหนดการวนซ้ำให้กับ Iterable จากนั้น และ next() จะดึงข้อมูลใน Iterable ออกมาตามลำดับการวนซ้ำนั่นเอง
.
👨💻 ตัวอย่าง1 : ดึงค่าใน Iterable ออกมาตามลำดับ Index
fruit = ["Apple", "papaya", "banana", "orange"]
iterator = iter(fruit)
print(next(iterator))
print(next(iterator))
print(next(iterator))
print(next(iterator))
.
หากเรียกใช้ 'next(iterator_obj)' อีกครั้ง มันจะ Return 'StopIteration' ออกมา เพราะค่าถูกดึงออกมาครบแล้วนั่นเอง
.
📑 ผลลัพธ์
Apple
papaya
banana
orange
.
👨💻 ตัวอย่าง2 : ตรวจสอบค่าใน Object ที่กำหนดว่าเป็น Iterable หรือไม่
def iterable(y):
try:
iter(y)
return True
except TypeError:
return False
arr = [34, [24, 35], (44, 112), {"Prayut":250}]
for i in arr:
print(i, " is iterable : ", iterable(i))
.
📑 ผลลัพธ์
34 is iterable : False
[24, 35] is iterable : True
(44, 112) is iterable : True
{'Prayut': 250} is iterable : True
จะเห็นว่า 34 ไม่ได้เป็น Iterable นั่นเอง
.
💥 Source : https://www.geeksforgeeks.org/python-difference-iterable-iterator/
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
Search
python iter next 在 63 How to use Python Iterators - YouTube 的八卦
Generators and iterators are only capable of one iteration when called with the next function. Important Links: Visit Channel ... ... <看更多>