💡 หลาย ๆ คนที่เขียน 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 - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
同時也有40部Youtube影片,追蹤數超過12萬的網紅prasertcbs,也在其Youtube影片中提到,การเข้าถึงข้อมูลแต่ละตัวที่อยู่ใน list ด้วย for loop การใช้ enumerate() เพื่อดึง index และค่าสมาชิกที่อยู่ใน list === ดาวน์โหลดไฟล์ตัวอย่างได้ที่ http...
python for list index 在 prasertcbs Youtube 的評價
การเข้าถึงข้อมูลแต่ละตัวที่อยู่ใน list ด้วย for loop
การใช้ enumerate() เพื่อดึง index และค่าสมาชิกที่อยู่ใน list
=== ดาวน์โหลดไฟล์ตัวอย่างได้ที่ http://goo.gl/yU2usz
เชิญสมัครเป็นสมาชิกของช่องนี้ได้ที่ ► https://www.youtube.com/subscription_center?add_user=prasertcbs
playlist สอนภาษาไพธอน Python เบื้องต้น ► https://www.youtube.com/watch?v=DI7eca5Kzdc&list=PLoTScYm9O0GH4YQs9t4tf2RIYolHt_YwW
playlist สอนภาษาไพธอน Python การเขียนโปรแกรมเชิงวัตถุ (OOP: Object-Oriented Programming) ► https://www.youtube.com/watch?v=4bVBSluxJNI&list=PLoTScYm9O0GF_wbU-7layLaSuHjzhIRc9
playlist สอน Python 3 GUI ► https://www.youtube.com/playlist?list=PLoTScYm9O0GFB1Y3cCmb9aPD5xRB1T11y
playlist สอนภาษา C++ เบื้องต้น ► https://www.youtube.com/watch?v=_NHyJBIxc40&list=PLoTScYm9O0GEfZwqM2KyCBcPTVsc6cU_i
playlist สอนภาษา C เบื้องต้น ► https://www.youtube.com/watch?v=Z_u8Nh_Zlqc&list=PLoTScYm9O0GHHgz0S1tSyIl7vkG0y105z
playlist สอนภาษา C# เบื้องต้น ► https://www.youtube.com/watch?v=hhl49jwOIZI&list=PLoTScYm9O0GE4trr-XPozJRwaY7V9hx8K
playlist สอนภาษาจาวา Java เบื้องต้น ► https://www.youtube.com/watch?v=O3rW9JvADfU&list=PLoTScYm9O0GF26yW0zVc2rzjkygafsILN
playlist สอนการทำ Unit Test ภาษาจาวา Java ► https://www.youtube.com/watch?v=R11yg8hKApU&list=PLoTScYm9O0GHiK3KNdH_PrNB0G3-kb1Bi
playlist สอนภาษา R เบื้องต้น ► https://www.youtube.com/watch?v=oy4qViQLXsI&list=PLoTScYm9O0GF6qjrRuZFSHdnBXD2KVICp
playlist สอนภาษา PHP เบื้องต้น ► https://www.youtube.com/watch?v=zlRDiXjYVo4&list=PLoTScYm9O0GH_6LARFxozL_viEsXV2wgO
python for list index 在 吳老師教學部落格 Youtube 的評價
文大Python程式入門或證照第6次串列和檔案讀取&讀取會員資料檔案menber文字檔&去除多餘的換行兩種方法與改為絕對路徑&學生成績CSV並計算各科總分與平均&改用串列的max與index方法&904資料計算計算平均體重與身高&安裝spyder與環境介紹&902題資料加總與合併全省郵局資料
上課內容:
01_重點回顧與串列和檔案讀取
02_讀取會員資料檔案menber文字檔
03_讀取全部與讀取前十個會員
04_去除多餘的換行兩種方法與改為絕對路徑
05_只取姓名與手機號碼兩欄
06_變化題下載學生成績CSV並計算各科總分與平均
07_計算國英數的總分與平均
08_增加各科最高分與姓名
09_改用串列的max與index方法
10_904資料計算計算平均體重與身高
11_904資料計算精簡版說明與安裝spyder
12_安裝spyder與環境介紹
13_902題資料加總與合併全省郵局資料
14_合併全省郵局資料合併說明
15_合併全省郵局資料合併完成
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/pccu_python_2018_2
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
TQC+Python證照目錄:
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elif
Python 第3類:迴圈敘述
技能內容:while、for…in
Python 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈
Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
Python 第6類:串列(List)的運作(一維、二維以及多維)
技能內容:串列的建立、串列的函式、串列參數傳遞、串列應用
Python 第7類:數組(Tuple)、集合(Set)以及詞典(Dictionary)
技能內容:數組、集合、詞典的建立、運作及應用
Python 第8類:字串(String)的運作
技能內容:字串的建立、字串的庫存函式、字串的應用
Python 第9類:檔案與異常處理
技能內容:文字I/O、檔案的建立、寫入資料與讀取資料、二進位I/O、編碼(Encoding)、異常處理
課程簡介:入門
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
VBA重要函數到Python
檔案處理
資料庫處理
課程簡介:進階
網頁資料擷取與分析、Python網頁測試自動化、YouTube影片下載器
處理 Excel 試算表、處理 PDF 與 Word 文件、處理 CSV 檔和 JSON 資料
實戰:PM2.5即時監測顯示器、Email 和文字簡訊、處理影像圖片、以 GUI 自動化來控制鍵盤和滑鼠
上課用書:
參考書目
Python初學特訓班(附250分鐘影音教學/範例程式)
作者: 鄧文淵/總監製, 文淵閣工作室/編著
出版社:碁峰? 出版日期:2016/11/29
吳老師 107/12/3
EXCEL,VBA,Python,文化推廣部,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
python for list index 在 吳老師教學部落格 Youtube 的評價
文大Python程式入門或證照第6次串列和檔案讀取&讀取會員資料檔案menber文字檔&去除多餘的換行兩種方法與改為絕對路徑&學生成績CSV並計算各科總分與平均&改用串列的max與index方法&904資料計算計算平均體重與身高&安裝spyder與環境介紹&902題資料加總與合併全省郵局資料
上課內容:
01_重點回顧與串列和檔案讀取
02_讀取會員資料檔案menber文字檔
03_讀取全部與讀取前十個會員
04_去除多餘的換行兩種方法與改為絕對路徑
05_只取姓名與手機號碼兩欄
06_變化題下載學生成績CSV並計算各科總分與平均
07_計算國英數的總分與平均
08_增加各科最高分與姓名
09_改用串列的max與index方法
10_904資料計算計算平均體重與身高
11_904資料計算精簡版說明與安裝spyder
12_安裝spyder與環境介紹
13_902題資料加總與合併全省郵局資料
14_合併全省郵局資料合併說明
15_合併全省郵局資料合併完成
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/pccu_python_2018_2
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
TQC+Python證照目錄:
Python 第1類:基本程式設計
技能內容:變數與常數、指定敘述、標準輸入輸出、運算式、算術運算子、數學函式的應用、格式化的輸出Python 第2類:選擇敘述
技能內容:if、if...else、if…elif
Python 第3類:迴圈敘述
技能內容:while、for…in
Python 第4類:進階控制流程
技能內容:常用的控制結構、條件判斷、迴圈
Python 第5類:函式(Function)
技能內容:函式使用、傳遞參數、回傳資料、內建函式、區域變數與全域變數
Python 第6類:串列(List)的運作(一維、二維以及多維)
技能內容:串列的建立、串列的函式、串列參數傳遞、串列應用
Python 第7類:數組(Tuple)、集合(Set)以及詞典(Dictionary)
技能內容:數組、集合、詞典的建立、運作及應用
Python 第8類:字串(String)的運作
技能內容:字串的建立、字串的庫存函式、字串的應用
Python 第9類:檔案與異常處理
技能內容:文字I/O、檔案的建立、寫入資料與讀取資料、二進位I/O、編碼(Encoding)、異常處理
課程簡介:入門
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
VBA重要函數到Python
檔案處理
資料庫處理
課程簡介:進階
網頁資料擷取與分析、Python網頁測試自動化、YouTube影片下載器
處理 Excel 試算表、處理 PDF 與 Word 文件、處理 CSV 檔和 JSON 資料
實戰:PM2.5即時監測顯示器、Email 和文字簡訊、處理影像圖片、以 GUI 自動化來控制鍵盤和滑鼠
上課用書:
參考書目
Python初學特訓班(附250分鐘影音教學/範例程式)
作者: 鄧文淵/總監製, 文淵閣工作室/編著
出版社:碁峰? 出版日期:2016/11/29
吳老師 107/12/3
EXCEL,VBA,Python,文化推廣部,EXCEL,VBA,函數,程式設計,線上教學,PYTHON安裝環境
python for list index 在 How to Find the Index of a Python List Item? - YouTube 的八卦
Python lists mimic real-life lists, such as shopping lists. Some times it's important to know at what point in ... ... <看更多>