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

Python - แปลงลิสต์ของ Tuple เป็น Dictionary

แปลง [(key, value), ...] ให้เป็น Dictionary

วิธีที่ 1: ใช้ dict() ตรงๆ (Key ต้องไม่ซ้ำ)

tuples = [('Key 1', 1), ('Key 2', 2), ('Key 3', 3), ('Key 4', 4), ('Key 5', 5)]
result = dict(tuples)
print(result)
# {'Key 1': 1, 'Key 2': 2, 'Key 3': 3, 'Key 4': 4, 'Key 5': 5}

วิธีที่ 2: ใช้ setdefault() รวม Value เป็น List (รองรับ Key ซ้ำ)

tuples = [('Key 1', 1), ('Key 2', 2), ('Key 3', 3), ('Key 4', 4), ('Key 5', 5)]
result = {}
for key, value in tuples:
    result.setdefault(key, []).append(value)
print(result)
# {'Key 1': [1], 'Key 2': [2], 'Key 3': [3], 'Key 4': [4], 'Key 5': [5]}

สรุป

  • dict(): ใช้เมื่อ Key ไม่ซ้ำ
  • setdefault: ใช้เมื่อ Key อาจซ้ำ ต้องการรวม Value เป็น List