چند دیکشنری مختلف در پایتون داریم که ممکن است کلید های مشترکی داشته باشند. می خواهیم چند دیکشنری را به یک دیکشنری با لیستی از مقادیر برای کلید های مشترک ترکیب کنیم.
روش شماره 1: استفاده از setdefault()
+ حلقه
این کار را می توان با استفاده از یک حلقه تو در تو و دریافت هر عنصر از دیکشنری و ایجاد یک لیست جدید برای کلید جدید یا اضافه کردن مقادیر در هنگام وقوع کلید مشابه انجام داد.
خروجی:
The original list is : [{'is': 4, 'bkeb': 2, 'best': 6}, {'it': 5, 'is': 7, 'best': 8}, {'CS': 10}]
The merged values encapsulated dictionary is : {'is': [4, 7], 'it': [5], 'bkeb': [2], 'CS': [10], 'best': [6, 8]}
روش شماره 2: استفاده از list comprehension + dictionary comprehension
ترکیب این دو مورد را می توان برای انجام این کار خاص استفاده کرد. یک کد تک خطی ارائه می دهد که می تواند برای این کار استفاده شود.
خروجی:
The original list is : [{'is': 4, 'bkeb': 2, 'best': 6}, {'it': 5, 'is': 7, 'best': 8}, {'CS' : 10}]
The merged values encapsulated dictionary is : {'is': [4, 7]، 'it': [5]، 'bkeb': [2]، 'CS': [10]، 'best': [6، 8]}
دیدگاهها