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

วิธีสร้าง Python Dictionary ที่มี Duplicate Keys

Python Dictionary ไม่อนุญาตให้ Key ซ้ำกัน อย่างไรก็ตาม เราสามารถใช้ defaultdict เพื่อหาทางแก้ไข คลาสนี้ถูกกำหนดในโมดูล collections

ใช้ List เป็น Default Factory สำหรับ Defaultdict Object

>>> from collections import defaultdict
>>> d = defaultdict(list)

นี่คือ List of Tuples แต่ละ Tuple มี 2 ไอเท็ม ไอเท็มแรกพบว่าถูกใช้ซ้ำ List นี้ถูกแปลงเป็น Defaultdict

>>> for k, v in l:
...     d[k].append(v)

แปลง Defaultdict นี้เป็น Dictionary Object โดยใช้ฟังก์ชัน dict()

>>> dict(d)
{1: [111, 'aaa'], 2: [222, 'bbb'], 3: [333, 'ccc']}