Computer >> Máy Tính >  >> Lập trình >> Python

Chương trình Python để lấy các chỉ số của từng phần tử của một danh sách trong danh sách khác

Khi cần lấy các chỉ số của từng phần tử của một danh sách trong một danh sách khác, một phép lặp đơn giản và thuộc tính liệt kê cùng với phương thức "setdefault" được sử dụng.

Nó cũng sử dụng khả năng hiểu danh sách và phương thức "get" được sử dụng.

Ví dụ

Dưới đây là một minh chứng về điều tương tự -

my_list = [14, 52, 23, 47, 18, 23, 12, 54, 43, 22, 28, 13]

print("The list is :")
print(my_list)

my_list_2 = [17, 52, 13]
print("The second list is :")
print(my_list_2)

element_indices = dict()
for index, value in enumerate(my_list):
   element_indices.setdefault(value, []).append(index)

my_result = [element_indices.get(index, [None]) for index in my_list_2]

print("The result is :")
print(my_result)

Đầu ra

The list is :
[14, 52, 23, 47, 18, 23, 12, 54, 43, 22, 28, 13]
The second list is :
[17, 52, 13]
The result is :
[[None], [1], [11]]

Giải thích

  • Danh sách các số nguyên được xác định và hiển thị trên bảng điều khiển.

  • Một danh sách các số nguyên khác được xác định và hiển thị trên bảng điều khiển.

  • Một từ điển trống được tạo.

  • Danh sách đầu tiên được lặp lại bằng cách sử dụng "enumerate".

  • Phương thức ‘setdefault’ được sử dụng để cung cấp giá trị cho phần tử.

  • Điều này được thêm vào từ điển trống.

  • Khả năng hiểu danh sách được sử dụng để lặp lại các phần tử và phương thức "get" được sử dụng để lấy các giá trị chỉ mục cho các phần tử trong chỉ mục thứ hai.

  • Điều này được lưu trữ trong một danh sách và được gán cho một biến.

  • Danh sách này được hiển thị dưới dạng đầu ra trên bảng điều khiển.