Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Chuyển danh sách thành Dictionary chỉ số và giá trị

Chuyển đổi danh sách thành dictionary với hai key: 'index' (chỉ số) và 'values' (giá trị). Sử dụng enumerate() và vòng lặp.

Mã nguồn

my_list = [32, 0, 11, 99, 223, 51, 67, 28, 12, 94, 89]
print("Danh sách gốc:", my_list)

my_list.sort(reverse=True)
print("Danh sách sắp xếp giảm dần:", my_list)

index_key, value_key = "index", "values"
my_result = {index_key: [], value_key: []}

for idx, val in enumerate(my_list):
    my_result[index_key].append(idx)
    my_result[value_key].append(val)

print("Kết quả:", my_result)

Kết quả

Danh sách gốc: [32, 0, 11, 99, 223, 51, 67, 28, 12, 94, 89]
Danh sách sắp xếp giảm dần: [223, 99, 94, 89, 67, 51, 32, 28, 12, 11, 0]
Kết quả: {'index': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 'values': [223, 99, 94, 89, 67, 51, 32, 28, 12, 11, 0]}

Giải thích

  • Danh sách được sắp xếp giảm dần.
  • Khởi tạo dictionary với hai key rỗng.
  • enumerate(my_list) sinh cặp (chỉ số, giá trị).
  • Append chỉ số vào list 'index', giá trị vào list 'values'.

Cách ngắn gọn hơn:

my_result = {
    'index': list(range(len(my_list))),
    'values': my_list
}

Hoặc dùng dict(enumerate(my_list)) để tạo dictionary {index: value}.