Mỗi khóa được phân tách khỏi giá trị của nó bằng dấu hai chấm [. ], các mục được phân tách bằng dấu phẩy và toàn bộ nội dung được đặt trong dấu ngoặc nhọn. Một từ điển trống không có bất kỳ mục nào được viết chỉ bằng hai dấu ngoặc nhọn, như thế này. {}
Các khóa là duy nhất trong một từ điển trong khi các giá trị có thể không. Các giá trị của từ điển có thể thuộc bất kỳ loại nào, nhưng các khóa phải thuộc loại dữ liệu bất biến, chẳng hạn như chuỗi, số hoặc bộ dữ liệu
Truy cập các giá trị trong từ điển
Để truy cập các phần tử từ điển, bạn có thể sử dụng dấu ngoặc vuông quen thuộc cùng với khóa để lấy giá trị của nó. Sau đây là một ví dụ đơn giản -
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Name']: ", dict['Name'] print "dict['Age']: ", dict['Age']
Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -
dict['Name']: Zara dict['Age']: 7
Nếu chúng tôi cố gắng truy cập một mục dữ liệu bằng một khóa không phải là một phần của từ điển, chúng tôi sẽ gặp lỗi như sau -
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Alice']: ", dict['Alice']
Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -
dict['Alice']: Traceback [most recent call last]: File "test.py", line 4, in print "dict['Alice']: ", dict['Alice']; KeyError: 'Alice'
cập nhật từ điển
Bạn có thể cập nhật từ điển bằng cách thêm mục nhập mới hoặc cặp khóa-giá trị, sửa đổi mục nhập hiện có hoặc xóa mục nhập hiện có như minh họa bên dưới trong ví dụ đơn giản –
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} dict['Age'] = 8; # update existing entry dict['School'] = "DPS School"; # Add new entry print "dict['Age']: ", dict['Age'] print "dict['School']: ", dict['School']
Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -
dict['Age']: 8 dict['School']: DPS School
Xóa các thành phần từ điển
Bạn có thể xóa các thành phần từ điển riêng lẻ hoặc xóa toàn bộ nội dung của từ điển. Bạn cũng có thể xóa toàn bộ từ điển trong một thao tác
Để xóa toàn bộ từ điển một cách rõ ràng, chỉ cần sử dụng câu lệnh del. Sau đây là một ví dụ đơn giản -
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} del dict['Name']; # remove entry with key 'Name' dict.clear[]; # remove all entries in dict del dict ; # delete entire dictionary print "dict['Age']: ", dict['Age'] print "dict['School']: ", dict['School']
Điều này tạo ra kết quả sau. Lưu ý rằng một ngoại lệ được đưa ra bởi vì sau khi từ điển del dict không còn tồn tại nữa -
dict['Age']: Traceback [most recent call last]: File "test.py", line 8, in print "dict['Age']: ", dict['Age']; TypeError: 'type' object is unsubscriptable
Lưu ý - phương thức del[] được thảo luận trong phần tiếp theo
Thuộc tính của khóa từ điển
Giá trị từ điển không có hạn chế. Chúng có thể là bất kỳ đối tượng Python tùy ý nào, đối tượng tiêu chuẩn hoặc đối tượng do người dùng định nghĩa. Tuy nhiên, điều tương tự cũng không đúng với các phím
Có hai điểm quan trọng cần nhớ về khóa từ điển -
[a] Không được phép nhập nhiều hơn một mục trên mỗi khóa. Điều đó có nghĩa là không cho phép khóa trùng lặp. Khi gặp phải các khóa trùng lặp trong quá trình gán, nhiệm vụ cuối cùng sẽ thắng. Ví dụ -
________số 8Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -
dict['Name']: Manni
[b] Khóa phải là bất biến. Điều đó có nghĩa là bạn có thể sử dụng chuỗi, số hoặc bộ dữ liệu làm khóa từ điển nhưng không được phép sử dụng những thứ như ['key']. Sau đây là một ví dụ đơn giản -
dict['Name']: Zara dict['Age']: 70
Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -
dict['Name']: Zara dict['Age']: 71
Các chức năng & phương pháp từ điển tích hợp
Python bao gồm các chức năng từ điển sau -
Sr. Không. Chức năng với Description1cmp[dict1, dict2]So sánh các yếu tố của cả dict
Cung cấp tổng chiều dài của từ điển. Điều này sẽ bằng với số mục trong từ điển
3str[chính tả]Tạo một biểu diễn chuỗi có thể in được của một từ điển
4 loại [biến]Trả về kiểu của biến đã truyền. Nếu biến được truyền là từ điển thì nó sẽ trả về kiểu từ điển
Bài viết này mô tả cách lấy giá trị từ một từ điển [đối tượng loại ______18] bằng khóa trong Python
- Nhận giá trị từ từ điển với
dict['Name']: Zara dict['Age']: 7
9 [#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Alice']: ", dict['Alice']
0 cho các khóa không tồn tại] - Sử dụng
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Alice']: ", dict['Alice']
1 để lấy giá trị mặc định cho các khóa không tồn tại
Nếu bạn muốn trích xuất các khóa theo giá trị, hãy xem bài viết sau
- Nhận khóa từ giá trị trong từ điển bằng Python
Liên kết được tài trợ
Nhận giá trị từ từ điển với dict['Name']: Zara
dict['Age']: 7
9 [#!/usr/bin/python
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Alice']: ", dict['Alice']
0 cho các khóa không tồn tại]
Trong Python, bạn có thể lấy giá trị từ từ điển bằng cách chỉ định khóa như
dict['Name']: Zara dict['Age']: 79
dict['Name']: Zara dict['Age']: 72
nguồn. dict_get. py
Trong trường hợp này,
#!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} print "dict['Alice']: ", dict['Alice']0 được nâng lên nếu khóa không tồn tại
dict['Name']: Zara dict['Age']: 73
nguồn. dict_get. py
Lưu ý rằng không có vấn đề gì khi chỉ định khóa không tồn tại nếu bạn muốn thêm phần tử mới
dict['Name']: Zara dict['Age']: 74
nguồn. dict_get. py
Để biết thêm thông tin về cách thêm các mục vào từ điển, hãy xem bài viết sau
- Hợp nhất nhiều từ điển và thêm các mục vào từ điển trong Python
Sử dụng
dict['Name']: Zara dict['Age']: 734 để kiểm tra xem khóa có tồn tại trong từ điển không
- Kiểm tra xem khóa/giá trị có tồn tại trong từ điển bằng Python không
Sử dụng #!/usr/bin/python
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Alice']: ", dict['Alice']
1 để lấy giá trị mặc định cho các khóa không tồn tại
Bạn có thể sử dụng phương pháp
dict['Name']: Zara dict['Age']: 736 của từ điển [
dict['Name']: Zara dict['Age']: 78] để lấy bất kỳ giá trị mặc định nào mà không gặp lỗi nếu khóa không tồn tại
- Các loại tích hợp - dict. get [] — Python 3. 9. 1 tài liệu
Chỉ định khóa làm đối số đầu tiên. Giá trị tương ứng được trả về nếu khóa tồn tại và
dict['Name']: Zara dict['Age']: 738 được trả về nếu khóa không tồn tại