Hướng dẫn python ordereddict update - bản cập nhật lệnh python

Python đặt hàng là một lớp con Dict duy trì thứ tự chèn các mục. Khi chúng tôi lặp lại một thứ tự, các mục được trả lại theo thứ tự chúng được chèn. Một từ điển thông thường không theo dõi thứ tự chèn. Vì vậy, khi lặp qua nó, các mục được trả lại theo thứ tự tùy ý. Khi chúng tôi muốn đảm bảo rằng các mặt hàng được trả lại theo thứ tự chúng được chèn, chúng tôi có thể sử dụng OrderedDict.

Nội phân chính

  • Python ra lệnh
  • Python đặt hàng ví dụ
  • Tạo đối tượng đặt hàng
  • Thêm, thay thế, loại bỏ các mục khỏi OrderedDict
  • Đã đặt hàng MOVE_TO_END ví dụ
  • Ví dụ Popitem đặt hàng
  • Đặt hàng lặp lại lặp lại
  • Đã đặt hàng ví dụ kiểm tra bình đẳng
  • Kết thúc
  • Đ-c liên Quan

Python ra lệnh

  • Python đặt hàng ví dụ
  • Tạo đối tượng đặt hàng
  • Thêm, thay thế, loại bỏ các mục khỏi OrderedDict
  • Đã đặt hàng MOVE_TO_END ví dụ
  • Ví dụ Popitem đặt hàngFIFO order. It accepts a boolean argument
    OrderedDict()
    OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
    
    8, if it’s set to
    OrderedDict()
    OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
    
    9 then items are returned in LIFO order.
  • Đặt hàng lặp lại lặp lại
  • Đã đặt hàng ví dụ kiểm tra bình đẳng
  • Kết thúc
  • Đ-c liên Quan
  • Đặt hàng là một phần của mô -đun Bộ sưu tập Python.

Python đặt hàng ví dụ

Tạo đối tượng đặt hàng

Tạo đối tượng đặt hàng

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)])

Thêm, thay thế, loại bỏ các mục khỏi 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)])

Đã đặt hàng MOVE_TO_END ví dụ

# 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:

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

Ví dụ Popitem đặt hàng

# pop last item
item = ordered_dict.popitem(True)
print(item)
print(ordered_dict)

Output:

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

Đặt hàng lặp lại lặp lại

# reversed iteration
for item in reversed(ordered_dict):
    print(item)

Output:

kiwi
cat
dog

Đã đặt hàng ví dụ kiểm tra bình đẳng

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

Output:

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

Kết thúc

Đ-c liên Quan

Đặt hàng là một phần của mô -đun Bộ sưu tập Python.

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

Chúng ta có thể tạo một

OrderedDict()
OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
6 trống và thêm các mục vào nó. Nếu chúng ta tạo ra một trật tự bằng cách thông qua một đối số dict, thì việc đặt hàng có thể bị mất vì Dict doesn không duy trì thứ tự chèn.

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

Nếu một mục bị ghi đè trong đơn đặt hàng, vị trí của nó được duy trì.

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

Nếu một mục bị xóa và thêm lại, thì nó sẽ chuyển sang phần cuối cùng.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.

Đặt hàng

OrderedDict()
OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
7 Xóa các mục theo thứ tự FIFO. Nó chấp nhận một đối số boolean
OrderedDict()
OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
8, nếu nó được đặt thành
OrderedDict()
OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
9 thì các mục được trả lại theo thứ tự LIFO.

Chúng ta có thể di chuyển một mục đến đầu hoặc cuối của đơn đặt hàng bằng hàm

# 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)
0. Nó chấp nhận một đối số boolean
OrderedDict()
OrderedDict([('kiwi', 4), ('apple', 5), ('cat', 3)])
8, nếu nó được đặt thành
# 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)
2 thì mục được chuyển sang đầu của Dict theo thứ tự.

Từ Python 3.6 trở đi, thứ tự được giữ lại cho các đối số từ khóa được chuyển cho hàm tạo đơn đặt hàng, tham khảo PEP-468.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.

Chúng ta có thể sử dụng hàm

# 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)
3 với OrderedDict cho các phần tử lặp theo thứ tự ngược lại.

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

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ẻ