Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ข้อผิดพลาดเล็กน้อยเมื่อใช้พจนานุกรม Python


พจนานุกรมในไพ ธ อนคือประเภทของโครงสร้างข้อมูลที่จับคู่คีย์กับค่าเป็นคู่คีย์-ค่า เป็นโครงสร้างข้อมูลที่ใช้บ่อยและมีคุณสมบัติที่น่าสนใจมากมาย โดยใส่เหล็กค้ำยันคู่ด้านล่าง

dict = {'day1':'Mon' ,'day2':'Tue','day3':'Wed'}

องค์ประกอบหรือคู่คีย์-ค่าในพจนานุกรมจะแสดงด้วยเครื่องหมายคำพูดเดี่ยวและคั่นด้วยเครื่องหมายทวิภาค

การสร้างพจนานุกรม

เราสร้างพจนานุกรมโดยกำหนดค่าที่เขียนในรูปของ ke

ตัวอย่าง

Dict1 = {'day1':'Mon' ,'day2':'Tue','day3':'Wed'}
print(type(dict1))
print(dict1)

# Using the dict() method
dict2 =dict({('day1','Mon'),('day2','Tue'),('day3','Wed')})
print(type(dict2))
print(dict2)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

{'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}

การเข้าถึงค่าในพจนานุกรม

ในการเข้าถึงองค์ประกอบของพจนานุกรม เราสามารถใช้วงเล็บเหลี่ยมร่วมกับคีย์เพื่อให้ได้ค่า นอกจากนี้เรายังสามารถใช้เมธอด get() เพื่อรับค่าสำหรับองค์ประกอบพจนานุกรมได้

ตัวอย่าง

dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed','weekend':{'d1':'Saturday','d2':'Sunday'}}
print(dict['day2'])
print(dict['weekend'])
print(dict.get('day3'))

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

Tue
{'d1': 'Saturday', 'd2': 'Sunday'}
Wed

การเพิ่มองค์ประกอบลงในพจนานุกรม

เราเพิ่มองค์ประกอบใหม่ลงในพจนานุกรมโดยเพิ่มคู่คีย์-ค่าใหม่ นอกจากนี้เรายังสามารถเพิ่มพจนานุกรมอื่นเป็นองค์ประกอบเพื่อสร้างพจนานุกรมที่ซ้อนกันได้

ตัวอย่าง

dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
dict['day4']='Thu'
dict['day5']='Fri'
print(dict)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

{'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed', 'day4': 'Thu', 'day5': 'Fri'}

กำลังปรับปรุงพจนานุกรม

เราสามารถอัปเดตพจนานุกรมโดยเพิ่มรายการใหม่หรือคู่คีย์-ค่าและแก้ไขรายการที่มีอยู่ เราได้เห็นการเพิ่มองค์ประกอบใหม่ในพจนานุกรมข้างต้นแล้ว ตอนนี้เราจะเห็นการแก้ไขรายการที่มีอยู่ ที่นี่เราเพียงแค่นำคีย์และกำหนดค่าใหม่ให้กับองค์ประกอบ

ตัวอย่าง

dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
dict['day1']='Monday'
dict['day2']='Tuesday'
print(dict)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

{'day1': 'Monday', 'day2': 'Tuesday', 'day3': 'Wed'}

ลบองค์ประกอบของพจนานุกรม

องค์ประกอบเฉพาะของพจนานุกรมสามารถลบได้โดยใช้คำสำคัญ del นอกจากนี้ยังสามารถใช้เพื่อลบพจนานุกรมทั้งหมด นอกจากนี้ยังมีวิธี clear() ซึ่งสามารถใช้เพื่อลบองค์ประกอบจากพจนานุกรมทั้งหมดได้

ตัวอย่าง

dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
print(dict)
del dict['day3']
print(dict)
dict.clear()
print(dict)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

{'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
{'day1': 'Mon', 'day2': 'Tue'}
{}

ข้อผิดพลาดทั่วไปบางประการขณะใช้พจนานุกรมใน python

  • การใช้ dict_name[Key_value] เพื่อเข้าถึงค่าที่ทำงานไม่ถูกต้องเสมอไปและมีข้อยกเว้น ดังนั้นเมธอด get() จึงเป็นวิธีการที่ดีกว่าในการเข้าถึงองค์ประกอบของพจนานุกรม

  • ในทำนองเดียวกัน ใช้เมธอด update(key=value) เพื่ออัปเดตค่าในพจนานุกรมแทนที่จะใช้วิธี dict_name[key_value]='new_value' โดยตรง

  • การสร้างสำเนาของพจนานุกรมโดยใช้ dict1=dict2 จะสร้างพจนานุกรมสองชุด แต่ทั้งคู่อ้างถึงวัตถุเดียวกัน ดังนั้นทั้งคู่จะได้รับการอัปเดตพร้อมกัน ใช้สำเนาตื้นถ้าคุณต้องการหลีกเลี่ยงการอัปเดตทั้งสองสำเนา

  • หากต้องการดูองค์ประกอบของพจนานุกรมในลำดับเฉพาะ ให้ใช้เมธอด sorted()

  • ใช้วิจารณญาณว่าเมื่อใดควรใช้พจนานุกรมและไม่ควรใช้เพราะมีโครงสร้างข้อมูลอื่นๆ เช่น ทูเพิล ชุด ฯลฯ ที่อาจเหมาะสมกับข้อกำหนดมากกว่า