Речникът е един от важните типове данни, налични в Python. Данните в речника се съхраняват като двойка ключ / стойност. Той е разделен с двоеточие (:), а двойката ключ / стойност е разделена със запетая (,).
Ключовете в речника са уникални и могат да бъдат низ, цяло число, кортеж и др. Стойностите могат да бъдат списък или списък в списък, числа, низ и т.н.
Ето пример за речник:
my_dict = {"a": A, "b": B, "c": C, "d": D}
В този урок за Python ще научите:
- Ограничения на ключовите речници
- Как да добавя елемент към ключ в речник с Python?
- Достъп до елементи на речник
- Изтриване на елемент (и) в речник
- Изтриване на елемент (и) от речника по метода pop ()
- Добавяне на елемент (и) към речник
- Актуализиране на съществуващи елементи в речник
- Поставете речник в друг речник
Ограничения на ключовите речници
Ето списък на ограниченията за ключа в речника:
- Ако има дублиран ключ, дефиниран в речник, се взема предвид последният. Например помислете за речника my_dict = {"Name": "ABC", "Address": "Mumbai", "Age": 30, "Name": "XYZ"} ;. Той има ключ "Name", дефиниран два пъти със стойност като ABC и XYZ. Предпочитанието ще бъде дадено на последното определено, т.е. "Име": "XYZ."
- Типът данни за вашия ключ може да бъде число, низ, плувка, булева стойност, кортежи, вградени обекти като плувка и функции.
Например my_dict = {bin: "001", hex: "6", 10: "ten", bool: "1", float: "12.8", int: 1, False: '0'};
Единственото нещо, което не е позволено, е, че не можете да дефинирате ключ в квадратни скоби, например my_dict = {["Name"]: "ABC", "Address": "Mumbai", "Age": 30};
Как да добавя елемент към ключ в речник с Python?
Можем да използваме вградената функция append (), за да добавяме елементи към ключовете в речника. За да добавим елемент с помощта на append () към речника, първо трябва да намерим ключа, към който трябва да добавим.
Помислете, че имате речник, както следва:
my_dict = {"Name":[],"Address":[],"Age":[]};
Ключовете в речника са Име, Адрес и Възраст. Използвайки методappend (), ние можем да актуализираме стойностите за ключовете в речника.
my_dict = {"Name":[],"Address":[],"Age":[]};my_dict["Name"].append("Guru")my_dict["Address"].append("Mumbai")my_dict["Age"].append(30)print(my_dict)
Когато отпечатваме речника след актуализиране на стойностите, изходът е както следва:
Изход:
{'Name': ['Guru'], 'Address': ['Mumbai'], 'Age': [30]}
Достъп до елементи на речник
Данните в речника са налични в двойка ключ / стойност. За да получите достъп до елементите от речник, трябва да използвате квадратни скоби (['key']) с ключа вътре в него.
Ето пример, който показва на елементи за достъп от речника с помощта на ключа в квадратната скоба.
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Mumbai"}print("username :", my_dict['username'])print("email : ", my_dict["email"])print("location : ", my_dict["location"])
Изход:
username : XYZemail : This email address is being protected from spambots. You need JavaScript enabled to view it.location : Mumbai
Ако се опитате да използвате ключ, който не съществува в речника, той ще изведе грешка, както е показано по-долу:
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Mumbai"}print("name :", my_dict['name'])
Изход:
Traceback (most recent call last):File "display.py", line 2, inprint("name :", my_dict['name'])KeyError: 'name'
Изтриване на елемент (и) в речник
За да изтриете елемент от речник, трябва да използвате ключовата дума del .
Синтаксисът е:
del dict['yourkey'] # This will remove the element with your key.
За да изтриете целия речник, можете отново да използвате ключовата дума del, както е показано по-долу:
del my_dict # this will delete the dictionary with name my_dict
За просто изпразване на речника или изчистване на съдържанието в него можете да използвате метода clear () във вашия речник, както е показано по-долу:
your_dict.clear()
Ето един работен пример, който показва изтриването на елемента, за изчистване на съдържанието на дикта и за изтриване на целия речник.
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Mumbai"}del my_dict['username'] # it will remove "username": "XYZ" from my_dictprint(my_dict)my_dict.clear() # till will make the dictionarymy_dictemptyprint(my_dict)delmy_dict # this will delete the dictionarymy_dictprint(my_dict)
Изход:
{'email': This email address is being protected from spambots. You need JavaScript enabled to view it.', 'location': 'Mumbai'}{}Traceback (most recent call last):File "main.py", line 7, inprint(my_dict)NameError: name 'my_dict' is not defined
Изтриване на елемент (и) от речника по метода pop ()
В допълнение към ключовата дума del, можете също да използвате метода dict.pop (), за да премахнете елемент от речника. Pop () е вграден метод, достъпен с речник, който помага да се изтрие елементът въз основа на дадения ключ.
Синтаксис:
dict.pop(key, defaultvalue)
Методът pop () връща елемента, премахнат за дадения ключ и ако даден ключ не присъства, той ще върне стойността по подразбиране. Ако стойността по подразбиране не е дадена и ключът не присъства в речника, това ще доведе до грешка.
Ето един работен пример, който показва използването на dict.pop () за изтриване на елемент.
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Mumbai"}my_dict.pop("username")print(my_dict)
Изход:
{'email': This email address is being protected from spambots. You need JavaScript enabled to view it.', 'location': 'Mumbai'}
Добавяне на елемент (и) към речник
За да добавите елемент към съществуващ речник, трябва да използвате името на речника, последвано от квадратни скоби с името на ключа и да му присвоите стойност.
Ето пример за същото:
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Mumbai"}my_dict['name']='Nick'print(my_dict)
Изход:
{'username': 'XYZ', 'email': This email address is being protected from spambots. You need JavaScript enabled to view it.', 'location': 'Mumbai', 'name': 'Nick'}
Актуализиране на съществуващи елементи в речник
За да актуализирате съществуващите елементи в речника, имате нужда от препратка към ключа, за който искате да се актуализира стойността.
Така че имаме речник my_dict = {"username": "XYZ", "email": " Този имейл адрес е защитен от спам ботове. Трябва да имате активиран JavaScript, за да го видите.", "Location": "Мумбай"}.
Бихме искали да актуализираме потребителското име от XYZ до ABC. Ето пример, който показва как можете да го актуализирате.
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Mumbai"}my_dict["username"] = "ABC"print(my_dict)
Изход:
{'username': 'ABC', 'email': This email address is being protected from spambots. You need JavaScript enabled to view it.', 'location': 'Mumbai'}
Поставете речник в друг речник
Помислете, че имате два речника, както е показано по-долу:
Речник 1:
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Washington"}
Речник 2:
my_dict1 = {"firstName" : "Nick", "lastName": "Price"}
Сега искам речникът my_dict1 да бъде вмъкнат в речника my_dict. За да направите това, можете да създадете ключ, наречен "name" в my_dict и да му присвоите речника my_dict1.
Ето един работен пример, който показва вмъкването на речника my_dict1 в my_dict.
my_dict = {"username": "XYZ", "email": "This email address is being protected from spambots. You need JavaScript enabled to view it.", "location":"Washington"}my_dict1 = {"firstName" : "Nick", "lastName": "Price"}my_dict["name"] = my_dict1print(my_dict)
Изход:
{'username': 'XYZ', 'email': This email address is being protected from spambots. You need JavaScript enabled to view it.', 'location': 'Mumbai', 'name': {'firstName': 'Nick', 'lastName': 'Price'}}
Сега, ако видите ключа "name", той има речника my_dict1.
Резюме:
- Речникът е един от важните типове данни, налични в Python. Данните в речника се съхраняват като двойка ключ / стойност. Ключът / стойността е разделен с двоеточие (:), а двойката ключ / стойност е разделена със запетая (,). Ключовете в речника са уникални и могат да бъдат низ, цяло число, кортеж и др. Стойностите могат да бъдат списък или списък в списък, числа, низ и т.н.
Важни вградени методи в речник:
Метод | Описание |
изчисти () | Той ще премахне всички елементи от речника. |
добавяне () | Това е вградена функция в Python, която помага да се актуализират стойностите за ключовете в речника. |
актуализация () | Методът update () ще ни помогне да обединим един речник с друг. |
поп () | Премахва елемента от речника. |