Python

Как да обедините речници в Python

Как да обедините речници в Python
Типът речникови данни се използва в python за съхраняване на множество стойности с ключове. Нов речник може да бъде създаден чрез обединяване на два или повече речника. Обединяването на данни се изисква, когато трябва да комбинирате един и същи тип данни, които се съхраняват в множество речници. Например данните за служители от всяка компания се съхраняват в много речници. За да генерираме списък с всички служители на компанията, ще трябва да обединим данните от тези речници. В Python съществуват много начини за обединяване на речници. Как можете да обедините речници е показано в тази статия, като използвате различни примери.

Пример-1: Обединете два прости речника

актуализация () метод се използва в python за комбиниране на един речник с друг речник. Следващият пример показва използването на метода update (). Тук са декларирани два речника, наречени stdDic1 и stdDic2. Стойностите на stdDic1 ще бъдат добавени в края на stdDic2. След това цикълът for се използва за отпечатване на ключовете и стойностите на обединения речник.

# Определете речник на списъка със студенти1
stdDic1 = 'Jony Lever': 'English', 'Meena Ali': 'CSE', 'John Micheal': 'LAW'
# Определете речник на студентския списък2
stdDic2 = 'John Abraham': 'CSE', 'Mily Hossain': 'BBA', 'Ella Binte Nazir': 'EEE'
# Обединете втория речник с първия речник
stdDic2.актуализация (stdDic1)
# Отпечатайте ключовете и стойностите на обединения речник
за val в stdDic2:
print ('\ nНаименование:', val)
print ('Отдел:', stdDic2 [val])

Изход:

Стартирайте скрипта. След стартиране на скрипта ще се появи следният изход.

Пример-2: Обединете прост речник и списък с множество речници

Следващият пример показва как можете да обедините речник със списък с множество речници. Тук речник с име isbn се декларира за съхраняване на ISBN на книгата като ключ и тип книга като стойност. Списък на речниците с име Книга се декларира, че съхранява заглавието на книгата и името на автора. zip () методът се използва за присъединяване на речници или кортежи, а методът dict () се използва за създаване на речник. Тези методи се използват в този скрипт за създаване на нов речник чрез обединяване на isbn и book. След това цикълът for се използва за достъп до стойностите на обединения речник.

# Декларирайте прост речник
isbn = '67533344': 'PHP', '997544333': 'Java', '456688644': 'VB.мрежа '
# Декларирайте списък с множество речници
book = ['title': 'Murach PHP and MySQL', 'author': 'Joel Murach and Ray Harris',
'title': 'Java The Complete Reference', 'author': 'Herbert Schildt',
'title': 'Начало на VB.NET "," автор ":" Блеър Ричард, Матю Рейнолдс и
Теарон Уилис ']
# Създайте нов речник чрез обединяване на един и няколко речника
mrgDict = dict (zip (isbn, книга))
# Отпечатайте ключовете и стойностите на обединения речник
за isbn в mrgDict:
print ('\ nISBN:', isbn)
print ('Име на книгата:', mrgDict [isbn] ['title'])
print ('Име на автора:', mrgDict [isbn] ['автор'])

Изход:

Стартирайте скрипта. След стартиране на скрипта ще се появи следният изход.

Пример-3: Обединете два речника с помощта на персонализирана функция

Два речника могат да бъдат обединени с помощта на копие() и актуализация () методи в python. Тук първоначалните стойности на речника ще бъдат непроменени. mergeDic () функция е дефинирана за копиране на стойностите на първия речник в име с променлива обединени и добавете стойностите на втория речник в обединени. След това се отпечатват стойностите на обединения речник.

# Декларирайте два речника
dict1 = "name": "Abir", "age": 25, "gender": "Male"
dict2 = "професия": "Програмист", "имейл": "[имейл защитен]"
"Дефинирайте функция за създаване на нов речник, обединяващ двата клавиша
и стойности, на dict1 и dict2 "
def mergeDict (d1, d2):
слети = d1.копие()
обединени.актуализация (d2)
връщане обединен
# Извикайте функцията за сливане
mrgDict = mergeDict (dict1, dict2)
# Отпечатайте стойностите на обединения речник
за idval в mrgDict:
печат (idval, ':', mrgDict [idval])

Изход:

Стартирайте скрипта. След стартиране на скрипта ще се появи следният изход.

Пример-4: Обединяване на два речника с помощта на оператор (**)

Речниците могат да се обединяват, без да се използва вградена или персонализирана функция, като се използва един израз. „**“оператор се използва в този пример за обединяване на два речника. Тук са наречени две речникови променливи dict1 и dict2 са декларирани, обединени с помощта на „**“ оператор с речниковите променливи и съхранява стойностите в променливата, mrgDict.

# Декларирайте два речника
dict1 = "Moniter": 500, "Mouse": 100, "Keyboard": 250
dict2 = "HDD": 300, "Принтер": 50, "Мишка": 50
# Обединяване на речници с помощта на оператор '**'
mrgDict = ** dict2, ** dict1
# Отпечатайте стойностите на обединения речник
за val в mrgDict:
печат (val, ':', mrgDict [val])

Изход:

Стартирайте скрипта. След стартиране на скрипта ще се появи следният изход.

Пример-5: Обединяване на два речника въз основа на общи ключове

Когато два речника съдържат един и същ ключ и ако стойността на ключа е цифрова, може да се наложи да се сумират стойностите по време на сливането. Този пример показва как могат да се добавят числови стойности на едни и същи ключове при обединяване на два речника. Тук са декларирани два речника с име store1 и store2. Ключовете и стойностите на store1 се итерират за цикъл for и проверете кои ключове на store1 са равни на ключовете на store2. Ако съществува някакъв ключ, стойностите на ключа ще бъдат добавени.

# Декларирайте два речника
store1 = 'Pen': 150, 'Pencil': 250, 'Notebook': 100
store2 = 'Eraser': 80, 'Pen': 50, 'Sharpner': 30, 'Pencil': 100
 
# Обединете стойностите на store2 с store1 с общите ключове
за ключ в store1:
ако ключ в store2:
store1 [ключ] = store1 [ключ] + store2 [ключ]
друго:
мине
 
# Отпечатайте ключовете и стойностите на обединения речник
за val in store1:
печат (val, ':', store1 [val])

Изход:

Стартирайте скрипта.  Тук два речника са често срещани в речниците. Това са "Pen" и "Pencil" и стойностите на тези клавиши се добавят.

Пример-6: Обединяване на всички стойности на речниците чрез преброяване на общи ключове

В предишния пример се добавят общите стойности на два речника въз основа на определен речник. Този пример показва как да обедините стойностите на два речника и да добавите стойностите на общи ключове по време на обединяването. Брояч () метод се използва в скрипта за добавяне на стойностите на общите ключове.

# Модул брояч на импортиране
от колекции за импортиране на броячи
# Декларирайте два речника
store1 = 'Писалка': 150, 'Молив': 250, 'Бележник': 100
store2 = 'Eraser': 80, 'Pen': 50, 'Sharpner': 30, 'Pencil': 100
 
# Обединете стойностите на речниците въз основа на общи ключове
mrgDic = брояч (store1) + брояч (store2)
 
# Отпечатайте ключовете и стойностите на обединения речник
за val в mrgDic:
print (val, ':', mrgDic [val])

Изход:

Стартирайте скрипта. Тук един речник съдържа три елемента, а друг речник съдържа четири елемента. Два ключа са често срещани в два речника.

Заключение:

Можете да обедините два или повече речника въз основа на вашите изисквания за програмиране. Надявам се, обединяването на речници да бъде лесна задача за потребителите на python след практикуване на горните примери.

Инсталирайте най-новата стратегия за игра OpenRA на Ubuntu Linux
OpenRA е Libre / Free Real Time стратегия за игра, която пресъздава ранните игри на Westwood като класическата Command & Conquer: Red Alert. Разпредел...
Инсталирайте най-новия Dolphin Emulator за Gamecube & Wii на Linux
Dolphin Emulator ви позволява да играете избраните от вас игри Gamecube & Wii на Linux Personal Computers (PC). Като безплатно достъпен и емулатор на...
Как да използвам GameConqueror Cheat Engine в Linux
Статията обхваща ръководство за използването на GameConqueror cheat engine в Linux. Много потребители, които играят игри под Windows, често използват ...