Hướng dẫn python ordereddict constructor - phương thức khởi tạo lệnh python



Module collection trong Python được định nghĩa là một bộ chứa được sử dụng để lưu trữ các bộ sưu tập dữ liệu, ví dụ: list, dict, set và tuple,... Nó được giới thiệu để cải thiện các chức năng của bộ chứa bộ sưu tập tích hợp. được định nghĩa là một bộ chứa được sử dụng để lưu trữ các bộ sưu tập dữ liệu, ví dụ: list, dict, set và tuple,... Nó được giới thiệu để cải thiện các chức năng của bộ chứa bộ sưu tập tích hợp.

Nội dung chính

  • Hàm namedtuple()
  • Hàm OrderedDict()
  • Hàm defaultdict()
  • Hàm Counter()
  • Hàm deque()
  • Python OrderedDict
  • Python OrderedDict Examples
  • Creating OrderedDict object
  • Adding, Replacing, Removing items from OrderedDict
  • OrderedDict move_to_end example
  • OrderedDict popitem example
  • OrderedDict Reverse Iteration
  • OrderedDict Equality Tests Example
  • Kết thúc
  • Đọc liên quan

Module collection trong Python được giới thiệu lần đầu tiên trong phiên bản 2.4.

Có nhiều loại Module collection khác nhau như sau:

Hàm namedtuple()

Hàm OrderedDict()

test = ('Hello', 24, 'M')  
print(test)  

Hàm defaultdict()

Hàm OrderedDict()

Hàm defaultdict()

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 

Hàm defaultdict()

Hàm defaultdict()

Hàm Counter()

from collections import defaultdict
number = defaultdict(int)
number['one'] = 1
number['two'] = 2
print(number['three'])

Hàm defaultdict()

Hàm Counter()

Hàm deque()

from collections import Counter
c = Counter()
list = [1, 2, 3, 4, 5, 7, 8, 5, 9, 6, 10]
Counter(list)
Counter({1:5, 2:4})
list = [1, 2, 4, 7, 5, 1, 6, 7, 6, 9, 1]
c = Counter(list)
print(c[1])

Hàm defaultdict()

Hàm deque()

Python OrderedDict

from collections import deque
list = ["x", "y", "z"]
deq = deque(list)
print(deq)

Hàm defaultdict()



Hàm Counter()

Nội dung chính

  • Python OrderedDict
  • Python OrderedDict Examples
  • Creating OrderedDict object
  • Adding, Replacing, Removing items from OrderedDict
  • OrderedDict move_to_end example
  • OrderedDict popitem example
  • OrderedDict Reverse Iteration
  • OrderedDict Equality Tests Example
  • Kết thúc
  • Đọc liên quan

Python OrderedDict

  • Python OrderedDict Examples
  • Creating OrderedDict object
  • Adding, Replacing, Removing items from OrderedDict
  • OrderedDict move_to_end example
  • OrderedDict popitem exampleFIFO order. It accepts a boolean argument
    from collections import defaultdict
    number = defaultdict(int)
    number['one'] = 1
    number['two'] = 2
    print(number['three'])
    
    3, if it’s set to
    from collections import defaultdict
    number = defaultdict(int)
    number['one'] = 1
    number['two'] = 2
    print(number['three'])
    
    4 then items are returned in LIFO order.
  • OrderedDict Reverse Iteration
  • OrderedDict Equality Tests Example
  • Kết thúc
  • Đọc liên quan
  • Module collection trong Python được giới thiệu lần đầu tiên trong phiên bản 2.4.

Python OrderedDict Examples

Creating OrderedDict object

Creating OrderedDict object

from collections import OrderedDict

# creating a simple dict
my_dict = {'kiwi': 4, 'apple': 5, 'cat': 3}

# creating empty ordered dict
ordered_dict = OrderedDict()
print(ordered_dict)

# creating ordered dict from dict
ordered_dict = OrderedDict(my_dict)
print(ordered_dict)

Output:

OrderedDict()
OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])

Adding, Replacing, Removing items from OrderedDict

# adding elements to dict
ordered_dict['dog'] = 3

# replacing a dict key value
ordered_dict['kiwi'] = 10
print(ordered_dict)

# removing and adding a value
ordered_dict.pop('kiwi')
print(ordered_dict)
ordered_dict['kiwi'] = 4
print(ordered_dict)

Output:

OrderedDict([('kiwi', 10), ('apple', 5), ('cat', 3), ('dog', 3)])
OrderedDict([('apple', 5), ('cat', 3), ('dog', 3)])
OrderedDict([('apple', 5), ('cat', 3), ('dog', 3), ('kiwi', 4)])

OrderedDict move_to_end example

# moving apple to end and dog to start
ordered_dict.move_to_end('apple')
ordered_dict.move_to_end('dog', False)
print(ordered_dict)

Output:

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
0

OrderedDict popitem example

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
1

Output:

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
2

OrderedDict Reverse Iteration

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
3

Output:

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
4

OrderedDict Equality Tests Example

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
5

Output:

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
6

Kết thúc

Đọc liên quan

Module collection trong Python được giới thiệu lần đầu tiên trong phiên bản 2.4.

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
7

Có nhiều loại Module collection khác nhau như sau:

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
8

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:

import collections  
d1 = collections.OrderedDict()  
d1['A'] = 10  
d1['C'] = 12  
d1['B'] = 11  
d1['D'] = 13  
d1['C'] = 15  
  
for k, v in d1.items():  
    print (k, v) 
9

Ở đâ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.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.popitemmove_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:

from collections import defaultdict
number = defaultdict(int)
number['one'] = 1
number['two'] = 2
print(number['three'])
0

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úc

Tạ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

  • Tài liệu chính thức   cho OrderedDict
  • Mô-đun Python trong tuần:  OrderedDict

4 hữu ích 0 bình luận 9.7k xem chia sẻ 0 bình luận 9.7k xem chia sẻ