Tạo dictionary từ danh sách bằng phương thức dict(), vòng lặp và phương thức setdefault().
Mã nguồn
my_dict = dict()
print("Đã tạo dictionary rỗng")
my_value_list = ['15', '14', '13', '12', '16']
print("Danh sách gốc:", my_value_list)
my_value_list.sort()
print("Danh sách sau khi sắp xếp:", my_value_list)
for value in my_value_list:
for element in range(int(value), int(value) + 2):
my_dict.setdefault(element, []).append(value)
print("Dictionary kết quả:", my_dict)
Kết quả
Đã tạo dictionary rỗng
Danh sách gốc: ['15', '14', '13', '12', '16']
Danh sách sau khi sắp xếp: ['12', '13', '14', '15', '16']
Dictionary kết quả: {12: ['12'], 13: ['12', '13'], 14: ['13', '14'], 15: ['14', '15'], 16: ['15', '16'], 17: ['16']}
Giải thích
- Tạo dictionary rỗng.
- Sắp xếp danh sách chuỗi số.
- Với mỗi giá trị
value, lặp từint(value)đếnint(value)+1. setdefault(key, [])tạo key với list rỗng nếu chưa tồn tại..append(value)thêm giá trị chuỗi vào list của key đó.
Kết quả: Mỗi key là số nguyên, value là list các chuỗi số lân cận.