Cách lấy khóa từ từ điển python?

Giải pháp tiêu chuẩn để xem các khóa từ điển là sử dụng hàm dict.keys(). Để chuyển dạng xem này thành một danh sách, bạn có thể sử dụng một hàm tạo danh sách, như hình bên dưới

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

d = {'A': 1, 'B': 2, 'C': 3}

 

x = danh sách(d.keys())

in(x)        # ['A', 'B', 'C']

 

Tải xuống mã chạy

 
Bạn cũng có thể chuyển từ điển tới hàm tạo danh sách, đây là lối tắt đến list(d.keys())

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

d = {'A': 1, 'B': 2, 'C': 3}

 

x = danh sách(d)

in(x)        # ['A', 'B', 'C']

 

Tải xuống mã chạy

 
Tương tự, để lấy danh sách các giá trị từ từ điển, bạn có thể chuyển dạng xem được trả về bởi hàm dict.values() cho hàm tạo của danh sách

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

d = {'A': 1, 'B': 2, 'C': 3}

 

x = danh sách(d.values())

in(x)        # [1, 2, 3]

 

Tải xuống mã chạy

2. Sử dụng toán tử giải nén lặp lại

Kể từ Python 3. 5, bạn có thể giải nén từ điển thành một danh sách theo nghĩa đen như [*d]. Cú pháp này đã được đề xuất trong PEP 448

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

d = {'A': 1, 'B': 2, 'C': 3}

 

x = [*d]

in(x)        # ['A', 'B', 'C']

 

Tải xuống mã chạy

 
Ngoài ra, bạn có thể gọi hàm dict.keys() để làm cho mã của bạn rõ ràng hơn

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

d = {'A': 1, 'B': 2, 'C': 3}

 

x = [*d.keys()]

in(x)        # ['A', 'B', 'C']

 

Tải xuống mã chạy

 
Để lấy danh sách các giá trị từ điển, bạn có thể gọi hàm dict.values()

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

d = {'A': 1, 'B': 2, 'C': 3}

 

x = [*d.values()]

in(x)        # [1, 2, 3]

 

Tải xuống mã chạy

3. Sử dụng Extended Iterable Unpacking

Một tùy chọn khác trong Python 3 là Extended Iterable Unpacking, được giới thiệu như một phần của PEP 3132. Bây giờ bạn có thể viết *l, = dict, trong đó l là danh sách trống và bên phải là từ điển của bạn

Làm cách nào để lấy giá trị của khóa trong từ điển Python?

Để lấy các giá trị từ một từ điển Python, bạn có thể sử dụng phương thức get() , vì vậy nếu bạn truyền hàm này dưới dạng tham số, hàm max() và min() sẽ trả về kết quả dựa trên giá trị, không phải khóa.

Phương pháp nào cho phép truy cập vào tất cả các tên khóa trong từ điển Python?