Chỉ mục từ điển Python

Từ điển được sử dụng để lưu trữ các cặp khóa-giá trị trong Python. Nói chung, chúng ta không thể truy cập từ điển bằng cách sử dụng chỉ mục của các phần tử của chúng cho các bộ sưu tập khác như danh sách hoặc mảng

Trước Python 3. 7, từ điển không có thứ tự. Mỗi khóa-giá trị được đặt theo thứ tự ngẫu nhiên trong từ điển. Chúng ta có thể sử dụng phương thức OrderedDict[] từ mô-đun collections trong những trường hợp này. Nó giữ nguyên thứ tự các cặp khóa-giá trị được thêm vào từ điển

Trong Trăn 3. 7 trở lên, các từ điển được đặt theo thứ tự theo mặc định

Chúng ta có thể truy cập các khóa, giá trị và các cặp khóa-giá trị bằng cách sử dụng chỉ mục trong các từ điển mà thứ tự được bảo toàn

Truy cập các khóa từ một từ điển bằng cách sử dụng chỉ mục

Chúng ta sẽ sử dụng phương thức keys[], phương thức này trả về một tập hợp các khóa. Chúng tôi có thể sử dụng chỉ mục để truy cập khóa được yêu cầu từ bộ sưu tập này sau khi chuyển đổi nó thành danh sách

Hãy nhớ sử dụng hàm list[] với hàm keys[], values[]

from collections import OrderedDict
d1 = OrderedDict[] 
d1['a'] = 0
d1['b'] = 1
d1['c'] = 2
keys = list[d1.keys[]]
print[keys[1]]
0. Đó là vì chúng không trả về danh sách truyền thống và không cho phép truy cập vào các phần tử bằng chỉ mục

Sau đây chứng minh điều này

d = {} 
d['a'] = 0
d['b'] = 1
d['c'] = 2
keys = list[d.keys[]]
print[keys[1]]

đầu ra

Khi làm việc bên dưới Python 3. 7, hãy nhớ sử dụng phương pháp OrderedDict[] để tạo từ điển cần thiết với thứ tự được duy trì. Ví dụ,

from collections import OrderedDict
d1 = OrderedDict[] 
d1['a'] = 0
d1['b'] = 1
d1['c'] = 2
keys = list[d1.keys[]]
print[keys[1]]

đầu ra

Truy cập các giá trị từ một từ điển bằng cách sử dụng chỉ mục trong Python

Khi chúng tôi muốn trả về một tập hợp tất cả các giá trị từ một từ điển, chúng tôi sử dụng hàm values[]

d = {} 
d['a'] = 0
d['b'] = 1
d['c'] = 2
values = list[d.values[]]
print[values[1]]

đầu ra

Truy cập các cặp khóa-giá trị từ một từ điển bằng cách sử dụng chỉ mục trong Python

Hàm

from collections import OrderedDict
d1 = OrderedDict[] 
d1['a'] = 0
d1['b'] = 1
d1['c'] = 2
keys = list[d1.keys[]]
print[keys[1]]
0 trả về một tập hợp tất cả các cặp khóa-giá trị của từ điển, với mỗi phần tử được lưu dưới dạng một bộ

Chỉ mục có thể được sử dụng để truy cập các cặp này từ danh sách

d = {} 
d['a'] = 0
d['b'] = 1
d['c'] = 2
values = list[d.items[]]
print[values[1]]

đầu ra

Hãy nhớ sử dụng hàm OrderedDict[] với tất cả các phương thức nếu phiên bản Python của bạn không giữ nguyên thứ tự của từ điển

Rivers Clothing có danh sách Nhân viên. Họ muốn tìm tên của nhân viên trẻ nhất của họ. Họ biết người này 19 tuổi. Danh sách này ở định dạng Từ điển và bạn đã được yêu cầu truy xuất tên được liên kết

💬 câu hỏi. Làm cách nào chúng ta viết mã Python để truy cập Khóa từ điển theo chỉ mục?

Chúng ta có thể hoàn thành nhiệm vụ này bằng một trong các tùy chọn sau

  • Phương pháp 1. Sử dụng từ điển và danh sách
  • Phương pháp 2. Sử dụng Danh sách và dict.items[]
  • Phương pháp 3. Sử dụng Danh sách Hiểu và dict.items[]
  • Phương pháp 4. Sử dụng Từ điển Hiểu và dict.items[]

Phương pháp 1. Sử dụng từ điển và danh sách

Hai tùy chọn này trong phương pháp này chuyển đổi Từ điển thành định dạng Danh sách để trích xuất các khóa. Sau đó, khóa thích hợp được truy cập dựa trên tình huống trên

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff]
print[names[3]]

Mã này khai báo một Từ điển chứa năm [5] khóa. các cặp giá trị và lưu chúng vào staff

Tùy chọn 1 ở trên chuyển đổi staff thành định dạng Danh sách, giải nén các khóa và lưu chúng vào

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
1. Nội dung của khóa thích hợp [
staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
2] được xuất ra thiết bị đầu cuối

HOẶC

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]

Tùy chọn 2 ở trên trích xuất các khóa từ staff và chuyển đổi chúng thành định dạng Danh sách tham chiếu đến khóa thích hợp [

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
2] và gửi đầu ra đến thiết bị đầu cuối

💡Lưu ý. Cả hai tùy chọn đều cho kết quả giống nhau. Tuy nhiên, Phương án 2 nhỏ gọn hơn

Từ điển Python – Hướng dẫn cơ bản


Xem video này trên YouTube

đầu ra

Jon

Phương pháp 2. Sử dụng Danh sách và dict. mặt hàng[]

Ví dụ này chuyển đổi Từ điển thành định dạng Danh sách, sau đó trích xuất và trả về khóa. các cặp giá trị dưới dạng Danh sách Tuples

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]

Mã này khai báo một Từ điển chứa năm [5] khóa. các cặp giá trị và lưu chúng vào staff. Sau đó,

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
6 được gọi để trích xuất các cặp này dưới dạng Danh sách các bộ dữ liệu

Nếu chúng tôi xuất

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
7 đến thiết bị đầu cuối, Danh sách các bộ dữ liệu sau đây sẽ hiển thị

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
8

Nếu chúng ta xuất [_______7_______9] ra thiết bị đầu cuối, Tuple được tham chiếu từ Danh sách sẽ hiển thị

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
0

Sau đó, để truy xuất phần tử đầu tiên của Tuple này,

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
1 được thêm vào
staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
print[list[staff][3]]
1 [
staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
3]. Cuối cùng, kết quả này được xuất ra thiết bị đầu cuối

Python chính tả. item[] Phương thức


Xem video này trên YouTube

đầu ra

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
4

Phương pháp 3. Sử dụng Danh sách hiểu và đọc chính tả. mặt hàng[]

Ví dụ này sử dụng Khả năng hiểu danh sách và dict.items[] để tìm kiếm và trả về khóa thích hợp dựa trên một giá trị

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
name = [k for k, v in staff.items[] if v == 19]
print[name]

Mã này khai báo một Từ điển chứa năm [5] khóa. các cặp giá trị và lưu chúng vào staff. Tính năng Hiểu danh sách được sử dụng với dict.items[] tìm kiếm và trả về khóa thích hợp khi giá trị được liên kết của nó bằng 19

Kết quả xuất ra thiết bị đầu cuối

đầu ra

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
8

Để loại bỏ các dấu ngoặc và dấu ngoặc kép xung quanh, hãy thêm

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
1 vào cuối câu lệnh Hiểu danh sách để tạo ra kết quả mong muốn

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
name = [k for k, v in staff.items[] if v == 19][0]
print[name]

đầu ra

Jon

Phương pháp 4. Sử dụng Từ điển Hiểu và đọc chính tả. mặt hàng[]

Ví dụ này sử dụng Từ điển Hiểu và đọc chính tả. items[] để tìm kiếm và trả về khóa thích hợp dựa trên một giá trị

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
name  = {k for k, v in staff.items[] if v == 19}
print[list[name][0]]

Mã này khai báo một Từ điển chứa năm [5] khóa. các cặp giá trị và lưu chúng vào staff. Tính năng Hiểu từ điển với dict.items[] tìm kiếm và trả về khóa thích hợp khi giá trị được liên kết của nó bằng 19

Kết quả xuất ra thiết bị đầu cuối

Hiểu từ điển Python - Hướng dẫn một lớp mạnh mẽ


Xem video này trên YouTube

Như đã trình bày ở trên, nếu

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
1 không được thêm vào
staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
name = [k for k, v in staff.items[] if v == 19]
print[name]
3 trong câu lệnh in, [
staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
name = [k for k, v in staff.items[] if v == 19]
print[name]
4] kết quả sau sẽ hiển thị

đầu ra

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
names = list[staff.items[]]
print[names[3][0]]
8

Để loại bỏ các dấu ngoặc và dấu ngoặc kép xung quanh, hãy thêm ____11_______1 vào câu lệnh in [

staff = {'Amy': 23, 'Ben': 32, 'Micah': 37, 'Jon': 19,  'Karn': 39}
name = [k for k, v in staff.items[] if v == 19]
print[name]
7] để tạo ra kết quả mong muốn

Jon

Bản tóm tắt

Năm [4] phương pháp truy cập Khóa từ điển theo chỉ mục này sẽ cung cấp cho bạn đủ thông tin để chọn phương pháp tốt nhất cho các yêu cầu mã hóa của bạn

Bạn có thể lập chỉ mục từ điển bằng Python không?

Đối tượng Từ điển Python cung cấp khóa. cơ sở lập chỉ mục giá trị . Lưu ý rằng từ điển không có thứ tự - vì các giá trị trong từ điển được lập chỉ mục theo khóa nên chúng không được sắp xếp theo bất kỳ thứ tự cụ thể nào, không giống như danh sách, trong đó mỗi mục có thể được định vị theo vị trí của nó trong danh sách.

Làm cách nào để lấy chỉ mục từ từ điển trong Python?

Nếu bạn có lệnh chính tả, thì d. phím[]. index[k] nên làm điều đó.

Bạn có thể lập chỉ mục các giá trị từ điển không?

Để truy cập các giá trị từ điển, chúng tôi không thể sử dụng chỉ mục số [như chúng tôi làm với danh sách hoặc bộ dữ liệu], vì từ điển là vùng chứa không có thứ tự.

Chủ Đề