Hàm Dictionary get() trong Python trả về giá trị của key đã cho. Nếu key không tồn tại thì trả về None, hoặc trả về giá trị default do người dùng định nghĩa. Cú pháp của get() trong Python: dict.get(key, default=None)
Tham số: key: Đây là key để được tìm trong Dictionary. default: Đây là giá trị được trả về trong trường hợp key không tồn tại. Ví dụ sau minh họa cách sử dụng của get() trong Python. dict1 = {'name': 'Viet', 'age': 22, 'address': 'Hanoi'}
print ("Gia tri cua key 'name' la: ", dict1.get('name'))
print ("Gia tri cua key 'gender' la: ", dict1.get('gender'))
print ("Gia tri cua key 'salary' la: ", dict1.get('salary', 'NaN'))
Chạy chương trình Python trên sẽ cho kết quả: Gia tri cua key 'name' la: Viet
Gia tri cua key 'gender' la: None
Gia tri cua key 'salary' la: NaN
Cú pháp
Phương thức get() dùng để lấy một phần tử trong dictionary dựa vào tên key mà ta truyền vào. Get() có hai tham số và ta sẽ lần lượt tìm hiểu ở các phần dưới đây.
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
1. Cú pháp dictionary get()
Cú pháp như sau:
Trong đó:
- key là khóa của phần tử cần lấy
- value là giá trị sẽ trả về nếu không tìm thấy phần tử key trong dict. Nếu ta không truyền vào tham số này thì nó sẽ có giá trị là None.
Giá trị trả về:
Bài viết này được đăng tại [free tuts .net]
- Trả về giá trị của phần tử key truyền vào nếu tìm thấy
- Trả về None nếu không tìm thấy và value không được truyền hàm
- Trả về value nếu không tìm tháy và value được truyền vào hàm
2. Ví dụ sử dụng dictionary get()
Để hiểu rõ hơn phương thức get() này thì ta sẽ làm một vài ví dụ như sau:
Ví dụ 1: Lấy tên và mức lương của nhân viên
person = {'name': 'Phill', 'age': 22} print('Name: ', person.get('name')) print('Age: ', person.get('age')) # Trường hợp khong cung cấp value print('Salary: ', person.get('salary')) # Trường hợp có cung cấp value print('Salary: ', person.get('salary', 0.0))
Kết quả như sau:
Name: Phill Age: 22 Salary: None Salary: 0.0
Ví dụ 2: Sử dụng cặp ngoặc vuông [] để thay thế cho phương thức get()
person = {'name': 'Phill', 'age': 22} print('Name: ', person.get('name')) print(person['name'])
Kết quả:
Câu hỏi đặt ra là trong hai cách dùng dấu ngoặc vuông và phương thức get() thì nên dùng cách nào? Để trả lời thì bạn phải xem nhận xét dưới đây.
Khi bạn lấy một phần tử nào đó mà không tồn tại thì nếu:
- Bạn sử dụng [] thì sẽ trả về lỗi
- Bạn sử dụng get() thì sẽ không trả về lỗi, và bạn có thể sử dụng tham số thứ hai để thiết lập giá trị mặc định trả về nếu phần tử không tồn tại.
Trên là những chia sẻ về cách sử dụng dictionary get() trong Python, hy vọng bài viết hữu ích với bạn.
Mục lục
Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất.
Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi.
1- Python Dictionary
Trong Python, dictionary (bộ từ điển) là một kiểu dữ liệu, nó là một danh sách các phần tử (element), mà mỗi phần tử là một cặp khóa và giá trị (Key & value), nó khá giống với khái niệm Map trong Java.
Các dictionary đều là là đối tượng của lớp dict.
Để viết một dictionary sử dụng cặp dấu móc { } , và viết các phần tử bên trong, các phần tử phân cách nhau bởi đấu phẩy. Mỗi phần tử là một cặp khóa và giá trị ngăn cách nhau bởi dấu hai chấm ( : )
Ví dụ:
# Dictionary myinfo = {"Name": "Tran", "Age": 37, "Address" : "Vietnam" }
Bạn cũng có thể tạo một đối tượng dictionary từ phương thức khởi tạo (constructor) của lớp dict.
createDictionaryFromClass.py
# Tạo một dictionary thông qua constructor của lớp dict. mydict = dict() mydict["E01"] = "John" mydict["E02"] = "King" print ("mydict: ", mydict)Output:
mydict: {'E01': 'John', 'E02': 'King'}
Đặc điểm của giá trị (value) trong dictionary:
- Mỗi phần tử (element) của dictionary là một cặp (khóa và giá trị), giá trị có thể là một kiểu bất kỳ (string, số, các kiểu người dùng tự định nghĩa,....), và cho phép trùng lặp.
Đặc điểm của khóa (key) trong dictionary.
- Khóa trong dictionary phải là kiểu bất biến (immutable). Như vậy nó có thể là string, số, Tuple, ....
- Một số kiểu không được phép, chẳng hạn List (Danh sách), vì List là kiểu dữ liệu biến đổi (mutable).
- Các khóa trong dictionary không được phép trùng lặp.
Ví dụ:
dictionaryExample.py
# Dictionary myinfo = {"Name": "Tran", "Age": 37, "Address" : "Vietnam" } print ("myinfo['Name'] = ", myinfo["Name"]) print ("myinfo['Age'] = ", myinfo["Age"]) print ("myinfo['Address'] = ", myinfo["Address"])Output:
myinfo['Name'] = Tran myinfo['Age'] = 37 myinfo['Address'] = Vietnam
2- Cập nhập Dictionary
Dictionary cho phép cập nhập giá trị ứng với một khóa nào đó, nó thêm mới một phần tử nếu khóa đó không tồn tại trên dictionary.
updateDictionaryExample.py
# Dictionary myinfo = {"Name": "Tran", "Age": 37, "Address" : "Vietnam" } # Cập nhập giá trị cho khóa (key) 'Address' myinfo["Address"] = "HCM Vietnam" # Thêm một phần tử mới với khóa (key) là 'Phone'. myinfo["Phone"] = "12345" print ("Element count: ", len(myinfo) ) print ("myinfo['Name'] = ", myinfo["Name"]) print ("myinfo['Age'] = ", myinfo["Age"]) print ("myinfo['Address'] = ", myinfo["Address"]) print ("myinfo['Phone'] = ", myinfo["Phone"])Output:
Element count: 4 myinfo['Name'] = Tran myinfo['Age'] = 37 myinfo['Address'] = HCM Vietnam myinfo['Phone'] = 12345
3- Xóa dictionary
Có 2 cách để loại bỏ một phần tử ra khỏi một dictionary.
- Sử dụng toán tử del
- Sử dụng phương thức __delitem__(key)
deleteDictionaryExample.py
# (Key,Value) = (Tên, Số điện thoại) contacts = {"John": "01217000111", \ "Tom": "01234000111", \ "Addison":"01217000222", "Jack":"01227000123"} print ("Contacts: ", contacts) print ("\n") print ("Delete key = 'John' ") # Xóa một phần tử ứng với khóa 'John' del contacts["John"] print ("Contacts (After delete): ", contacts) print ("\n") print ("Delete key = 'Tom' ") # Xóa một phần tử ứng với khóa 'Tom' contacts.__delitem__( "Tom") print ("Contacts (After delete): ", contacts) print ("Clear all element") # Xóa toàn bộ các phần tử. contacts.clear() print ("Contacts (After clear): ", contacts) # Xóa luôn dictionary 'contacts' khỏi bộ nhớ del contacts # Lỗi xẩy ra khi truy cập vào biến không tồn tại trên bộ nhớ print ("Contacts (After delete): ", contacts)4- Các hàm với với Dictionary
len(dict) | Trả về số phần tử của dict. |
str(dict) | Hàm chuyển đổi ra một string biểu diễn dictionary. |
type(variable) | Trả về kiểu của biến được truyền vào. Nếu biến truyền vào là một dictionary, thì nó sẽ trả về đối tượng đại diện lớp 'dict'. |
dir(clazzOrObject) | Trả về danh sách các thành viên của lớp (hoặc đối tượng) được truyền vào. Nếu truyền vào là lớp dict, nó sẽ trả về danh sách các thành viên của lớp dict. |
functionDictionaryExample.py
contacts = {"John": "01217000111" ,"Addison": "01217000222","Jack": "01227000123"} print ("contacts: ", contacts) print ("Element count: ", len(contacts) ) contactsAsString = str(contacts) print ("str(contacts): ", contactsAsString ) # Một đối tượng đại diện lớp 'dict'. aType = type(contacts) print ("type(contacts): ", aType ) # Hàm dir(dict) trả về các thành viên của lớp 'dict'. print ("dir(dict): ", dir(dict) ) # ------------------------------------------------------------------------------------ # ['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', # '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', # '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', # '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', # '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', # 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', # 'setdefault', 'update', 'values'] # -------------------------------------------------------------------------------------5- Các phương thức
TODO
Có thể bạn quan tâm
Đây là các khóa học trực tuyến bên ngoài website o7planning mà chúng tôi giới thiệu, nó có thể bao gồm các khóa học miễn phí hoặc giảm giá.