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

Python - Tạo từ điển bằng cách sử dụng danh sách không có giá trị nào

Giả sử bạn được cung cấp một danh sách nhưng chúng tôi muốn chuyển nó sang từ điển. Phần tử từ điển giữ hai giá trị được gọi là cặp giá trị khóa, chúng tôi sẽ sử dụng trong trường hợp giá trị. Các phần tử của danh sách trở thành khóa và các phần tử không sẽ vẫn là phần giữ chỗ.

Với dict

Hàm khởi tạo dict () tạo một từ điển trong Python. Vì vậy, chúng tôi sẽ sử dụng nó để tạo từ điển. Phương thức fromkeys được sử dụng để tạo các phần tử từ điển.

Ví dụ

listA = ["Mon","Tue","Wed","Thu","Fri"]
print("Given list: \n", listA)

res = dict.fromkeys(listA)

# New List
print("The list of lists:\n",res)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given list:
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of lists:
{'Mon': None, 'Tue': None, 'Wed': None, 'Thu': None, 'Fri': None}

Với zip và dict

Chúng ta cũng có thể sử dụng hàm tạo dict với phương thức zip để mỗi phần tử được chuyển đổi thành một cặp giá trị khóa.

Ví dụ

listA = ["Mon","Tue","Wed","Thu","Fri"]
print("Given list: \n", listA)

res = dict(zip(listA, [None]*len(listA)))

# New List
print("The list of lists:\n",res)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given list:
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of lists:
{'Mon': None, 'Tue': None, 'Wed': None, 'Thu': None, 'Fri': None}

Với khả năng hiểu chính tả

Tạo một vòng lặp for để lặp qua từng phần tử của danh sách và gán Không có làm khóa.

Ví dụ

listA = ["Mon","Tue","Wed","Thu","Fri"]
print("Given list: \n", listA)

res = {key: None for key in listA}

# New List
print("The list of lists:\n",res)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given list:
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of lists:
{'Mon': None, 'Tue': None, 'Wed': None, 'Thu': None, 'Fri': None}