Hướng dẫn ordereddict python 3
Mô-đun bộ sưu tập của Python có một lớp con tuyệt vời khác của dict được gọi là OrderedDict. Như tên của nó, từ điển này theo dõi thứ tự của các phím khi chúng được thêm vào. Nếu bạn tạo một lệnh chính quy, bạn sẽ lưu ý rằng đó là một bộ sưu tập dữ liệu không có thứ tự: Show
Mỗi khi bạn in nó ra, thứ tự có thể khác nhau. Đôi khi bạn sẽ cần phải lặp lại các khóa trong từ điển của mình theo một thứ tự cụ thể. Ví dụ, tôi đã có một trường hợp sử dụng khi tôi cần các khóa được sắp xếp để tôi có thể lặp qua chúng theo thứ tự. Để làm điều đó, bạn có thể làm như sau:
Chúng ta hãy tạo một thể hiện của OrderedDict bằng cách sử dụng chính tả ban đầu của chúng tôi, nhưng trong quá trình tạo, chúng tôi sẽ sắp xếp các khóa của từ điển:
Ở đây, chúng ta tạo OrderedDict bằng cách sắp xếp nó một cách nhanh chóng bằng hàm dựng sẵn được sắp xếp của Python . Hàm được sắp xếp có trong các mục của từ điển, đó là danh sách các bộ dữ liệu đại diện cho các cặp khóa của từ điển. Nó sắp xếp chúng và sau đó chuyển chúng vào OrderedDict, thứ sẽ giữ trật tự của chúng. Vì vậy, khi chúng ta đi in ra các khóa và giá trị, chúng theo thứ tự chúng ta mong đợi. Nếu bạn lặp qua một từ điển thông thường (không phải là danh sách các khóa được sắp xếp), thứ tự sẽ thay đổi mọi lúc. Lưu ý rằng nếu bạn thêm khóa mới, chúng sẽ được thêm vào cuối OrderedDict thay vì được tự động sắp xếp. Một điều khác cần lưu ý về OrderDicts là khi bạn đi so sánh hai OrderedDicts, họ sẽ không chỉ kiểm tra các mục cho sự bình đẳng mà còn là thứ tự đúng. Một từ điển thông thường chỉ nhìn vào nội dung của từ điển và không quan tâm đến thứ tự của nó. Cuối cùng, OrderDicts có hai phương thức mới trong Python 3: popitem và move_to_end . Phương thức popitem sẽ trả về và xóa một cặp (khóa, vật phẩm). Phương thức move_to_end sẽ di chuyển một khóa hiện có đến một trong hai đầu của OrderedDict. Mục này sẽ được chuyển sang phải đến cuối nếu đối số cuối cùng cho OrderedDict được đặt thành True (là mặc định) hoặc bắt đầu nếu nó là Sai. Thật thú vị, OrderedDicts hỗ trợ phép lặp ngược bằng cách sử dụng hàm tích hợp đảo ngược của Python:
Khá gọn gàng, mặc dù bạn có thể sẽ không cần chức năng đó mỗi ngày. Kết thúcTại thời điểm này, bạn nên sẵn sàng dùng thử OrderedDict cho chính mình. Đó là một bổ sung hữu ích cho bộ công cụ của bạn mà tôi hy vọng bạn sẽ tìm thấy nhiều cách sử dụng trong cơ sở mã của mình. Đọc liên quan
4 hữu ích 0 bình luận 9.7k xem chia sẻ Nội dung chính Nội dung chính
Hướng dẫn cách sắp xếp dictionary python. Bạn sẽ học được cách sắp xếp dictionary python bằng hàm sorted() cũng như cách thay đổi luật sắp xếp dictionary python sau bài học này. Sắp xếp dictionary python theo thứ tự tăng dần | hàm sorted()Để xắp xếp các phần tử của dictionary trong python, hãy sử dụng hàm sorted() với cú pháp sau đây:
Trong đó Quy tắc sắp xếp sẽ như dưới đây:
Lại nữa, chúng ta có thể sử dụng hàm sorted() để sắp xếp dictionary python theo key, value hoặc là cả hai bằng cách kết hợp với các phương thức của dictionary giống như dưới đây: Sắp xếp theo key | phương thức keys()Nếu chúng ta truyền đối số cho hàm sorted() bằng một dictionary, kết quả trả về sẽ chỉ là một list mới với phần tử là key của dictionary ban đầu. dict = {1:'red', 2:'blue', 3:'yellow'} Chúng ta cũng có thể dùng kèm phương thức keys() khi chỉ định đối số cho hàm sorted() như sau, và kết quả cũng giống nhau: keys_sorted1 = sorted(dict.keys()) Có thể thấy, việc sử dụng phương thức keys() hay không cũng không làm thay đổi kết quả sắp xếp nên thông thường chúng ta có thể lược bỏ đi. Tuy nhiên khi phát triển phần mềm python theo team và cần một phương thức chung cho cả nhóm để sắp xếp dictionary, thì bạn nên chỉ định sắp xếp dictionary kèm phương thức keys() cho cả nhóm. Sắp xếp theo value | phương thức values()Khi bạn muốn chỉ sắp xếp dictionary python theo value, hãy truyền đối số cho hàm sorted() bằng cách sử dụng phương thức values(). dict = {1:'red', 2:'blue', 3:'yellow'} Trong ví dụ trên, chúng ta truyền đối số Sắp xếp theo cả key và value | phương thức items()Khi bạn muốn chỉ sắp xếp dictionary python theo cả key và value, hãy truyền đối số cho hàm sorted() bằng cách sử dụng phương thức items(). dict = {1:'red', 2:'blue', 3:'yellow'} Trong trường hợp này, theo mặc định thì hàm sorted() sẽ sắp xếp dictionary theo key. Tuy nhiên nếu bạn muốn hàm sorted() sắp xếp dictionary theo value, hãy chỉ định thêm một đối số của hàm sorted() bằng một hàm không tên được tạo ra bởi hàm lambda như sau: dict = {1:'red', 2:'blue', 3:'yellow'} Về cách sử dụng hàm lambda, hãy tiếp tục theo dõi ở phần Thay đổi luật sắp xếp dictionary python | key = hàm nhé. Sắp xếp dictionary python theo thứ tự giảm dần | hàm sorted()Để sắp xếp dictionary python theo thứ tự giảm dần bằng hàm sorted(), hãy chỉ định thêm đối số
Về cách sử dụng cũng tương tự như với khi bạn sắp xếp dictionary python theo thứ tự tăng dần như trên. Sau đây, hãy cùng tìm hiểu một số ví dụ cụ thể nhé. Sắp xếp giảm dần theo keyDưới đây là ví dụ sắp xếp dictionary python theo key giảm dần bằng hàm sorted(). dict = {1:'red', 2:'blue', 3:'yellow'} Sắp xếp giảm dần theo valueDưới đây là ví dụ sắp xếp dictionary python theo value giảm dần bằng hàm sorted(). dict = {1:'red', 2:'blue', 3:'yellow'} Sắp xếp giảm dần theo cả key và valuesDưới đây là ví dụ sắp xếp dictionary python giảm dần theo key và value bằng hàm sorted(). dict = {1:'red', 2:'blue', 3:'yellow'} Thay đổi luật sắp xếp dictionary python | key = hàmỞ phần trên, bạn đã thấy cách thay đổi sắp xếp mặc định từ key sang value của hàm sorted() rồi phải không? Với việc chỉ định thêm đối số
Trong đó Có một điểm thú vị là trong python tồn tại cả hàm số được dựng sẵn, và hàm số do chúng ta tự tạo ra. Hãy xem một số ví dụ sau đây: dict = {1:'red', 2:'blue', 3:'yellow'} Ngoài ra, với việc kết hợp đối số dict = {1:'red', 2:'blue', 3:'yellow'} Ví dụ thứ hai, chính là ví dụ sử dụng dict = {1:'red', 2:'blue', 3:'yellow'} Ở đây, với cách viết hàm
lambda Hàm x=[key,value] Do đó chỉ định
Hãy xem ví dụ sau đây để hiểu rõ hơn: dict = {1:'red', 2:'blue', 3:'yellow'} Tổng kếtTrên đây Kiyoshi đã hướng dẫn bạn cách sắp xếp dictionary python mặc định bằng hàm sorted() cũng như cách thay đổi luật sắp xếp dictionary python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé. Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo. Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam! HOME>> python cơ bản - lập trình python cho người mới bắt đầu>>11. dictionary trong python Bài sauKiểm tra key hoặc value có tồn tại trong dictionary python hay không Bài tiếpXóa phần tử trong dictionary python |