Từ điển có thể được sắp xếp trong python không?

Trong bài viết này, chúng ta sẽ tìm hiểu cách sắp xếp từ điển trong python. Từ điển trong Python được sử dụng để lưu trữ các cặp khóa-giá trị theo cách lộn xộn [không theo thứ tự]. Bạn cũng có thể sắp xếp hoặc sắp xếp từ điển theo thứ tự tăng dần/giảm dần bằng cách sử dụng hàm python được tích hợp sẵn sorted[]

Có ba cách để sắp xếp từ điển trong python

Python sắp xếp từ điển theo khóa

Trong ví dụ này, chúng tôi đang sử dụng hàm sorted[] để sắp xếp từ điển và vòng lặp for để in mục của từ điển

ví dụ 1

# Python3
# Sort or Order dictionary with key-value pairs.

# Initialized a dictionary
fruitscolor = {"Banana" : "Yellow",
    "Mango" : "Green",
    "Apple" : "Red",
    "Grapefruit" : "Pink",
    "Blackberry" : "Purple",
    "Sapodilla" : "Brown"}

# sort and print the items of dictionary
for fruit, color in sorted[fruitscolor.items[]]:
  print[fruit, ":", color]

đầu ra

Apple : Red
Banana : Yellow
Blackberry : Purple
Grapefruit : Pink
Mango : Green
Sapodilla : Brown

Giải trình

Trong ví dụ trên, chúng tôi đã khởi tạo một từ điển có tên “fruitscolor”. Từ điển này chứa tên của trái cây là 'khóa' và màu tương ứng của chúng là 'giá trị'. Sau đó, chúng ta sử dụng phương thức sorted[] để sắp xếp các mục của từ điển. Phương thức này trả về một danh sách được sắp xếp từ điển của chúng tôi theo thứ tự bảng chữ cái

ví dụ 2

# Python3
# Sort or Order dictionary by key.

# Initialized a dictionary
fruitscolor = {"Banana" : "Yellow",
    "Mango" : "Green",
    "Apple" : "Red",
    "Grapefruit" : "Pink",
    "Blackberry" : "Purple",
    "Sapodilla" : "Brown"}

# sort items in dictionary
fruitscolor = sorted[fruitscolor]

# Print items in dictionary through for loop
for fruit in fruitscolor:
 print[fruit]

đầu ra

Apple
Banana
Blackberry
Grapefruit
Mango
Sapodilla

Giải trình

Trong ví dụ trên, đầu tiên chúng ta khởi tạo từ điển của mình sau đó sắp xếp nó bằng phương thức sorted[]. Bây giờ màu trái cây giữ một từ điển được sắp xếp và cập nhật. Sau đó, chúng tôi đã sử dụng vòng lặp để chỉ lặp qua các phím I. tên 'trái cây'. Do đó, chúng tôi chỉ nhận được đầu ra được sắp xếp theo tên trái cây chứ không phải màu sắc.   

Python sắp xếp từ điển theo giá trị

Để sắp xếp từ điển theo giá trị, chúng ta sử dụng hàm value[] với hàm sorted[] và để in giá trị, chúng ta sử dụng ‘vòng lặp for’

Thí dụ

# Python3
# Sort or Order dictionary by values.

# Initialized a dictionary
fruitscolor = {"Banana" : "Yellow",
    "Mango" : "Green",
    "Apple" : "Red",
    "Grapefruit" : "Pink",
    "Blackberry" : "Purple",
    "Sapodilla" : "Brown"}

# sort values in dictionary
fruitscolor = sorted[fruitscolor.values[]]

# Print values in dictionary through for loop
for color in fruitscolor:
  print[color]

đầu ra

Brown
Green
Pink
Purple
Red
Yellow

Giải trình

Trong ví dụ trên, chúng ta đã sử dụng các phương thức sẵn có sorted[] và values[]. Các phương thức sorted[] trả về đối tượng có thể lặp được sắp xếp. Trong khi phương thức values[] trả về danh sách tất cả các giá trị trong từ điển. Màu trái cây giữ các giá trị được sắp xếp của từ điển. Cuối cùng, chúng tôi đã sử dụng vòng lặp for để lặp lại các giá trị của từ điển. Do đó, đầu ra chỉ chứa giá trị chứ không chứa khóa

Đảo ngược thứ tự sắp xếp

Để thay đổi thứ tự sắp xếp, chúng ta cần sử dụng tùy chọn “reverse=True” với hàm sorted[]

Chúng ta có thể sử dụng phương pháp này để giải thích tất cả các tình huống như đã đề cập ở trên, chẳng hạn như sắp xếp theo khóa, sắp xếp theo cặp khóa-giá trị & sắp xếp theo giá trị

Sắp xếp từ điển theo khóa hoặc cặp khóa-giá trị theo thứ tự đảo ngược

Thí dụ

# Python3
# Sort or Order dictionary by key in reverse order.

# Initialized a dictionary
fruitscolor = {"Banana" : "Yellow",
    "Mango" : "Green",
    "Apple" : "Red",
    "Grapefruit" : "Pink",
    "Blackberry" : "Purple",
    "Sapodilla" : "Brown"}

# Sort dictionary in reverse order
fruitscolor = sorted[fruitscolor, reverse=True]

# Print items in dictionary through for loop
for fruit in fruitscolor:
 print[fruit]

đầu ra

Sapodilla
Mango
Grapefruit
Blackberry
Banana
Apple

Giải trình

Trong ví dụ trên, chúng ta vừa thêm một tham số bổ sung vào phương thức sorted[] tôi. e "reverse=True". Đảo ngược chấp nhận giá trị boolean là true hoặc false. Nếu nó được đặt bằng true, nó sẽ sắp xếp theo thứ tự giảm dần nếu không thì thứ tự tăng dần. Điều ngược lại là tùy chọn và giá trị mặc định của nó là sai

Trong trường hợp này, đảo ngược được đặt thành 'True'. Do đó, đầu ra được sắp xếp mà chúng tôi nhận được theo thứ tự ngược lại.    

Phần kết luận

Để sắp xếp từ điển, chúng ta có thể sử dụng phương thức tích hợp sorted[]. Chúng ta có thể sắp xếp từ điển theo giá trị của nó hoặc theo khóa của nó. Để sắp xếp theo giá trị, chúng tôi sử dụng phương thức tích hợp values[]. Để sắp xếp theo thứ tự đảo ngược, hãy thêm một tham số bổ sung vào phương thức sorted[] reverse và đặt giá trị này bằng 'true'.  

Có thể sắp xếp từ điển bằng Python không?

Để sắp xếp từ điển theo giá trị trong Python bạn có thể sử dụng hàm sorted[] . Hàm sorted[] của Python có thể được sử dụng để sắp xếp từ điển theo khóa, cho phép phương thức sắp xếp tùy chỉnh. sorted[] nhận ba đối số. đối tượng, khóa và đảo ngược. Từ điển là cấu trúc dữ liệu không có thứ tự.

Tại sao chúng tôi không thể sắp xếp từ điển trong Python?

Khái niệm sắp xếp chỉ áp dụng cho một tập hợp có thứ tự—nói cách khác, một chuỗi. Một ánh xạ, chẳng hạn như từ điển, không có thứ tự nên không thể sắp xếp.

Khóa từ điển Python có được sắp xếp không?

từ điển python không có thứ tự do đó chỉ có thể in hoặc gán cho str. Nhưng điều này cũng sắp xếp các khóa của các đối tượng lồng nhau, có thể không được mong muốn. Lưu ý rằng điều này chỉ sắp xếp từ điển, không phải danh sách, e. g. chính tả. keys[] sẽ không được sắp xếp vì nó là một danh sách .

Từ điển có được sắp xếp trong Python 3 không?

Từ điển trong Python là tập hợp các mục lưu trữ dữ liệu dưới dạng các cặp khóa-giá trị. Trong Python 3. 7 trở lên, từ điển được sắp xếp theo thứ tự chèn mục . Trong các phiên bản trước, chúng không có thứ tự.

Chủ Đề