Python ฐานข้อมูล
- หน้าก่อนหน้า Python ตัวเลข
- หน้าต่อไป Python If Else
แคตาล็อก (Dictionary)
แคตาล็อกเป็นชุดที่ไม่มีลำดับ แก้ไขได้และมีดัชนี ใน Python แคตาล็อกเขียนด้วยวงเล็บ มีตัวชื่อกุญแจและค่า:
ตัวอย่าง
สร้างและพิมพ์แคตาล็อก:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } print(thisdict)
เข้าถึงรายการ
คุณสามารถเข้าถึงรายการของแคตาล็อกโดยอ้างอิงตัวชื่อกุญแจของมันด้วยการใช้การอ้างอิงในวงเล็บ:
ตัวอย่าง
เรียกค่าของตัวชื่อกุญแจ "model":
x = thisdict["model"]
มีวิธีอื่นที่ชื่อ get()
วิธีนี้จะให้ค่าที่เหมือนกัน:
ตัวอย่าง
เรียกค่าของตัวชื่อกุญแจ "model":
x = thisdict.get("model")
แก้ไขค่า
คุณสามารถเปลี่ยนค่าของรายการเฉพาะด้วยการอ้างอิงตัวชื่อกุญแจของมัน:
ตัวอย่าง
แก้ไข "year" ให้เป็น 2019:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict["year"] = 2019
วิ่งวนผ่านแคตาล็อก
คุณสามารถใช้ for
วิ่งวนผ่านแคตาล็อก。
เมื่อวิ่งวนผ่านแคตาล็อก ค่าที่กลับมาคือตัวชื่อกุญแจของแคตาล็อก แต่ยังมีวิธีที่กลับมาด้วยค่า:
ตัวอย่าง
พิมพ์ตัวชื่อกุญแจทุกตัวตามลำดับ:
for x in thisdict: print(x)
ตัวอย่าง
พิมพ์ค่าทุกค่าในแคตาล็อกตามลำดับ:
for x in thisdict: print(thisdict[x])
ตัวอย่าง
คุณยังสามารถใช้ values()
ฟังก์ชันนี้กลับมาด้วยค่าของแคตาล็อก:
for x in thisdict.values(): print(x)
ตัวอย่าง
ด้วยการใช้ฟังก์ชัน items() สำหรับเดินทางตามกุญแจและค่า:
for x, y in thisdict.items(): print(x, y)
ตรวจสอบว่าตัวชื่อกุญแจมีอยู่หรือไม่
เพื่อที่จะระบุว่ามีตัวชื่อกุญแจที่กำหนดในแคตาล็อกหรือไม่ ใช้ in
คำกำหนด:
ตัวอย่าง
ตรวจสอบว่ามี "model" ในแคตาล็อกหรือไม่:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } if "model" in thisdict: print("Yes, 'model' is one of the keys in the thisdict dictionary")
ความยาวแคตาล็อก
เพื่อที่จะระบุจำนวนรายการในแคตาล็อก (ตัวชื่อกุญแจ-ค่า), ใช้ len()
วิธี。
ตัวอย่าง
พิมพ์จำนวนรายการในแคตาล็อก:
print(len(thisdict))
เพิ่มรายการ
โดยการใช้ตัวชื่อกุญแจใหม่และเข้าใจให้มันมีค่า สามารถเพิ่มรายการเข้าแคตาล็อก:
ตัวอย่าง
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict["color"] = "red" print(thisdict)
ลบรายการ
มีหลายวิธีที่สามารถลบรายการจากแคตาล็อก:
ตัวอย่าง
pop() วิธีลบรายการที่มีชื่อกุญแจที่กำหนด:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict.pop("model") print(thisdict)
ตัวอย่าง
popitem()
วิธีลบรายการที่ใส่ล่าสุด (ก่อน 3.7 ลบรายการสุ่มๆ):
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict.popitem() print(thisdict)
ตัวอย่าง
del thisdict["model"]
thisdict.popitem()
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } คำเรียกใช้งานลบส่วนของภาษีที่มีชื่อฉบับเฉพาะ print(thisdict)
ตัวอย่าง
del thisdict["model"]
del
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } คำเรียกใช้งานสังเกตความ del thisdict
ตัวอย่าง
clear()
print(thisdict) #this จะทำให้เกิดข้อผิดพลาด เพราะ "thisdict" ไม่มีอยู่อีกต่อไป
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } คำเรียกใช้งานสังเกตความ print(thisdict)
thisdict.clear()
สร้างภาษี คุณไม่สามารถที่จะสร้างสำเนาภาษีด้วยการ
dict2 = dict1dict2
และเพียงแค่สำเนา dict1
จะส่งผลลัพธ์ในอาทิตย์ที่ dict1
แก้ไขที่มีใน dict2
ของ
มีวิธีหลายอย่างที่สามารถสร้างสำเนาได้ หนึ่งในนั้นคือใช้วิธี copy()
。
ตัวอย่าง
ใช้ copy()
วิธีสร้างสำเนา
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } mydict = thisdict.copy() print(mydict)
อีกวิธีหนึ่งที่สร้างสำเนาคือใช้วิธี dict()
。
ตัวอย่าง
ใช้ dict()
วิธีสร้างสำเนาของภาษี
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } mydict = dict(thisdict) print(mydict)
ภาษีที่รวม
ภาษีก็สามารถมีภาษีอื่นมากมาย ซึ่งเรียกว่า ภาษีที่รวม
ตัวอย่าง
สร้างภาษีที่มีภาษีอื่นสามภาษี
myfamily = { "child1" : { "name" : "Phoebe Adele", "year" : 2002 }, "child2" : { "name" : "Jennifer Katharine", "year" : 1996 }, "child3" : { "name" : "Rory John", "year" : 1999 } }
หรือ หากคุณต้องการที่จะรวมภาษีที่มีอยู่แล้วเป็นภาษีรวม
ตัวอย่าง
สร้างสามภาษีแบบฉบับ แล้วสร้างภาษีที่มีสามภาษีอื่น
child1 = { "name" : "Phoebe Adele", "year" : 2002 } child2 = { "name" : "Jennifer Katharine", "year" : 1996 } child3 = { "name" : "Rory John", "year" : 1999 } myfamily = { "child1" : child1, "child2" : child2, "child3" : child3 }
ฟังก์ชันสร้าง dict()
หรือเช่น dict()
ฟังก์ชันสร้างแบบใหม่ของแม่แบบ
ตัวอย่าง
thisdict = dict(brand="Porsche", model="911", year=1963) # โปรดสังเกตว่าคำเรียกใช้งานไม่ใช่สตริงแบบเทกษา # โปรดสังเกตว่าใช้เส้นใต้รวมแทนเส้นขนานเพื่อการสร้างค่า print(thisdict)
วิธีแปลงฐานข้อมูล
Python มีกลุ่มวิธีที่สามารถใช้กับแปลงฐานข้อมูล
วิธี | คำอธิบาย |
---|---|
clear() | ลบทุกองค์ประกอบในแปลงฐานข้อมูล |
copy() | คืนสำเนาของแปลงฐานข้อมูล |
fromkeys() | คืนแปลงฐานข้อมูลที่มีค่ากุญแจและค่าประกอบที่กำหนด |
get() | คืนค่าของค่ากุญแจที่กำหนด |
items() | คืนรายการของตัวเลือกที่ประกอบด้วยกุญแจ-ค่าประกอบ |
keys() | คืนรายการของกุญแจของแปลงฐานข้อมูล |
pop() | ลบองค์ประกอบที่มีค่ากุญแจที่กำหนด |
popitem() | ลบตัวเลือกของกุญแจ-ค่าประกอบที่เพิ่มเข้ามาสุดท้าย |
setdefault() | คืนค่าของค่ากุญแจที่กำหนด ถ้าค่ากุญแจไม่มีอยู่ ก็จะเพิ่มค่ากุญแจด้วยค่าประกอบที่กำหนด |
update() | ปรับปรุงแปลงฐานข้อมูลด้วยค่ากุญแจ-ค่าประกอบที่กำหนด |
values() | คืนรายการของค่าทั้งหมดในแปลงฐานข้อมูล |
- หน้าก่อนหน้า Python ตัวเลข
- หน้าต่อไป Python If Else