ในบทที่แล้ว เราได้เรียนรู้เกี่ยวกับ List ซึ่งเป็น Data Type ที่สามารถเก็บค่าได้หลายๆ ค่าพร้อมกัน หรือเรียกว่า Collection มาในบทนี้ เราจะมาเรียนรู้อีก หนึ่ง Data Type ที่สามารถเก็บค่าได้หลายค่าเช่นกัน นั่นก็คือ Dictionary ซึ่งนิยมใช้ในการแก้ปัญหาในการเขียนโค้ดได้หลากหลายและเป็นประโยชน์อย่างมาก
Dictionary
Dictionary เป็น Data Type ใน Python ที่สามาเก็บค่าพร้อมๆ กันได้หลายค่า หรือ Collection โดยแต่ละค่า จะทำการเก็บเป็นคู่ คือ Key และ Value
ซึ่งการสร้าง Dictionary ใช้ปีกกา (curly brackets) เปิดและปิด
carDictionary = {
1: "Ford",
2: "Mustang"
}
print(carDictionary)
เมื่อเราทำการแสดงค่าตัวแปร Dictionary นี้ออกมาก็จะได้ค่าดังนี้
{
1: "Ford",
2: "Mustang"
}
Dictionary Items
จากตัวอย่างด้านบน คือเราทำการสร้าง ตัวแปร ชื่อ carDictionary โดยมี Dictionary Item 2 ตัวคือ
- Item ตัวที่ 1 ประกอบไปด้วย key = 1 และ value = “Ford”
- Item ตัวที่ 2 ประกอบไปด้วย key = 2 และ value = “Mustang”
เราสามารถดึงค่าของแต่ละ value ออกมาได้ โดยการระบุ key ลงไป เช่น
print(carDictionary[1])
จากตัวอย่าง เราระบุ key = 1 ลงไปในตัวแปร carDictionary โดยใส่ค่า key อยู่ใน brackets ([]) ซึ่งเราจะได้ค่าออกมาเป็น “Ford” ซึ่งเป็น value ของ Item ตัวที่มี key = 1
ค่า Key ซ้ำไม่ได้ Value ซ้าได้
ค่าของ key ใน Dictionary นึงจะซ้ำกันไม่ได้เลย แต่ค่าของ value จะสามารถซ้ำกันได้ อยากให้น้องๆ ลองเขียนและรัน 2 คำสั่งด้านล่างดูครับ แล้วสังเกตุดูว่า คำสั่งชุดไหน รันผ่านและชุดไหนรันไม่ผ่าน
ชุดที่ 1
carDictionary = {
1: "Ford",
2: "Mustang",
2: "Toyota"
}
print(carDictionary)
ชุดที่ 2
carDictionary = {
1: "Ford",
2: "Mustang",
3: "Ford"
}
print(carDictionary)
Key และ Value มี Data Type ผสมกันได้
แม้ Key จะไม่อนุญาติให้มีค่าซ้ำกันได้ แต่สามารถใช้ Data Type แตกต่างกันได้ครับ ขณะที่ Value นั้น สามารถใช้ค่าซ้ำและ Data Type แตกต่างกันได้ในแต่ละ Item
thisdict = {
"brand": "Ford",
"model": "Mustang",
1: 1964,
2: 2020
}
print(thisdict)
จะเห็นว่า ตัวแปร Dictionary ด้านบน สามารถเก็บ Item ใช้ Key ที่มีทั้ง String และ Integer Data Type ได้ เช่นเดียวกับ Value ครับ
Length และ Type ของ Dictionary
เช่นเดียวกับ Data Type อื่นๆ ครับ เราสามารถหาจำนวนของ Dictionary Item ใน ตัวแปร Dictionary จากคำสั่ง len() ครับ ขณะเดียวกันเราก็ใช้คำสั่ง type() ในการหาชนิดของ Data Type ได้เช่นเดิมครับ
thisdict ={
"brand": "Ford",
"model": "Mustang",
1: 1964,
2: 2020
}
print(len(thisdict))
print(type(thisdict))
ซึ่งคำตอบของการรันคำสั่งด้านบนก็คือ
3
<class 'dict'>
คอร์ส Python for Kids
สอบถามข้อมูลและรายละเอียดเพิ่มเติมได้ทาง เฟสบุ๊ค คิดกับโค้ด
หรือกดแชทที่
ด้าน (ขวา) ล่างของเว็บไซต์เพื่อแชท
ทางทีมงานจะรีบตอบกลับให้เร็วที่สุดครับ ขอบคุณทุกท่านมากครับ
