Hướng dẫn how do you create a counter in python? - làm thế nào để bạn tạo một bộ đếm trong python?

Xem bây giờ hướng dẫn này có một khóa học video liên quan được tạo bởi nhóm Python thực sự. Xem nó cùng với hướng dẫn bằng văn bản để hiểu sâu hơn về sự hiểu biết của bạn: Đếm với bộ đếm của Python This tutorial has a related video course created by the Real Python team. Watch it together with the written tutorial to deepen your understanding: Counting With Python's Counter

Show

Đếm một số đối tượng lặp đi lặp lại cùng một lúc là một vấn đề phổ biến trong lập trình. Python cung cấp một loạt các công cụ và kỹ thuật bạn có thể sử dụng để tiếp cận vấn đề này. Tuy nhiên, Python sườn

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 từ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 cung cấp một giải pháp sạch sẽ, hiệu quả và pythonic.
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5
from
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 provides a clean, efficient, and Pythonic solution.

Lớp con từ điển này cung cấp các khả năng đếm hiệu quả ra khỏi hộp. Hiểu

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 và cách sử dụng nó một cách hiệu quả là một kỹ năng thuận tiện để có một nhà phát triển Python.

Trong hướng dẫn này, bạn sẽ học cách:

  • Đếm một số đối tượng lặp lại cùng một lúcseveral repeated objects at once
  • Tạo quầy với Python từ
    >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5
    >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5
  • Lấy các đối tượng phổ biến nhất trong một quầymost common objects in a counter
  • Cập nhật số lượng đối tượngobject counts
  • Sử dụng
    >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5 để tạo điều kiện cho các tính toán tiếp theofurther computations

Bạn cũng sẽ tìm hiểu về những điều cơ bản của việc sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 như một multiset, đây là một tính năng bổ sung của lớp này trong Python.

Đếm các đối tượng trong Python

Đôi khi bạn cần đếm các đối tượng trong một nguồn dữ liệu nhất định để biết tần suất chúng xảy ra. Nói cách khác, bạn cần xác định tần số của chúng. Ví dụ: bạn có thể muốn biết tần suất một mục cụ thể xuất hiện trong danh sách hoặc chuỗi các giá trị. Khi danh sách của bạn ngắn, việc đếm các mặt hàng có thể đơn giản và nhanh chóng. Tuy nhiên, khi bạn có một danh sách dài, việc đếm mọi thứ có thể khó khăn hơn.frequency. For example, you might want to know how often a specific item appears in a list or sequence of values. When your list is short, counting the items can be straightforward and quick. However, when you have a long list, counting things can be more challenging.

Để đếm các đối tượng, bạn thường sử dụng bộ đếm, là một biến số nguyên với giá trị ban đầu là 0. Sau đó, bạn tăng bộ đếm để phản ánh số lần một đối tượng đã cho xuất hiện trong nguồn dữ liệu đầu vào.counter, which is an integer variable with an initial value of zero. Then you increment the counter to reflect the number of times a given object appears in the input data source.

Khi bạn đếm các lần xuất hiện của một đối tượng, bạn có thể sử dụng một bộ đếm duy nhất. Tuy nhiên, khi bạn cần đếm một số đối tượng khác nhau, bạn phải tạo ra nhiều bộ đếm như các đối tượng duy nhất bạn có.

Để đếm một số đối tượng khác nhau cùng một lúc, bạn có thể sử dụng từ điển Python. Các phím từ điển sẽ lưu trữ các đối tượng bạn muốn đếm. Các giá trị từ điển sẽ giữ số lần lặp lại của một đối tượng nhất định hoặc số lượng đối tượng.keys will store the objects you want to count. The dictionary values will hold the number of repetitions of a given object, or the object’s count.

Ví dụ: để đếm các đối tượng trong một chuỗi bằng cách sử dụng từ điển, bạn có thể lặp qua chuỗi, kiểm tra xem đối tượng hiện tại có phải là trong từ điển để khởi tạo bộ đếm (cặp giá trị khóa), sau đó tăng số lượng của nó phù hợp.

Ở đây, một ví dụ đếm các chữ cái trong từ Mississippi Mississippi:

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     if letter not in counter:
...         counter[letter] = 0
...     counter[letter] += 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}

Vòng lặp

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
1 lặp lại các chữ cái trong
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
2. Trong mỗi lần lặp, câu lệnh có điều kiện kiểm tra xem chữ cái trong tay có phải là một chìa khóa trong từ điển mà bạn sử dụng dưới dạng
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3 không. Nếu vậy, nó tạo ra một khóa mới với chữ cái và khởi tạo số lượng của nó về 0. Bước cuối cùng là tăng số lượng. Khi bạn truy cập
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3, bạn sẽ thấy rằng các chữ cái hoạt động dưới dạng các phím và các giá trị theo tính.

Một cách khác để đếm các đối tượng có từ điển là sử dụng

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 với
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 làm giá trị mặc định:

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}

Vòng lặp

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
1 lặp lại các chữ cái trong
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
2. Trong mỗi lần lặp, câu lệnh có điều kiện kiểm tra xem chữ cái trong tay có phải là một chìa khóa trong từ điển mà bạn sử dụng dưới dạng
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3 không. Nếu vậy, nó tạo ra một khóa mới với chữ cái và khởi tạo số lượng của nó về 0. Bước cuối cùng là tăng số lượng. Khi bạn truy cập
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3, bạn sẽ thấy rằng các chữ cái hoạt động dưới dạng các phím và các giá trị theo tính.

Một cách khác để đếm các đối tượng có từ điển là sử dụng

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 với
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 làm giá trị mặc định:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})

Vòng lặp

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
1 lặp lại các chữ cái trong
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
2. Trong mỗi lần lặp, câu lệnh có điều kiện kiểm tra xem chữ cái trong tay có phải là một chìa khóa trong từ điển mà bạn sử dụng dưới dạng
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3 không. Nếu vậy, nó tạo ra một khóa mới với chữ cái và khởi tạo số lượng của nó về 0. Bước cuối cùng là tăng số lượng. Khi bạn truy cập
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3, bạn sẽ thấy rằng các chữ cái hoạt động dưới dạng các phím và các giá trị theo tính.

Một cách khác để đếm các đối tượng có từ điển là sử dụng

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 với
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 làm giá trị mặc định:

Khi bạn gọi

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
7 theo cách này, bạn sẽ nhận được số lượng hiện tại của
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
8 hoặc
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 (mặc định) nếu chữ cái bị thiếu. Sau đó, bạn tăng số lượng bằng
>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
0 và lưu trữ nó theo
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
8 tương ứng trong từ điển.

Bạn cũng có thể sử dụng >>> from collections import Counter >>> Counter(i=4, s=4, p=2, m=1) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 2 từ >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 6 để đếm các đối tượng trong vòng lặp:

Giải pháp này ngắn gọn và dễ đọc hơn. Trước tiên, bạn khởi tạo

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3 bằng cách sử dụng
>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
2 với
>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 làm chức năng nhà máy mặc định. Bằng cách này, khi bạn truy cập một khóa không tồn tại trong
>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
2 bên dưới, từ điển sẽ tự động tạo khóa và khởi tạo nó với giá trị mà hàm nhà máy trả về.

Trong ví dụ này, vì bạn sử dụng

>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 làm hàm nhà máy, giá trị ban đầu là
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6, kết quả là gọi
>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 mà không có đối số.

Xây dựng quầy

Có một vài cách để bạn tạo các trường hợp

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Tuy nhiên, nếu mục tiêu của bạn là đếm một số đối tượng cùng một lúc, thì bạn cần sử dụng một chuỗi hoặc có thể lặp lại để khởi tạo bộ đếm. Ví dụ: ở đây, cách thức bạn có thể viết lại ví dụ Mississippi bằng cách sử dụng
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5:

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 lặp lại trên
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1 và tạo ra một từ điển với các chữ cái dưới dạng các khóa và tần số của chúng là giá trị. Trong ví dụ đầu tiên, bạn sử dụng một chuỗi làm đối số cho
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Bạn cũng có thể sử dụng danh sách, bộ dữ liệu hoặc bất kỳ phép lặp nào với các đối tượng lặp lại, như bạn thấy trong ví dụ thứ hai.

Có nhiều cách khác để tạo các trường hợp

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Tuy nhiên, họ không hoàn toàn ngụ ý đếm. Ví dụ: bạn có thể sử dụng một từ điển chứa các khóa và tính như thế này:

>>>

>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 lặp lại trên
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1 và tạo ra một từ điển với các chữ cái dưới dạng các khóa và tần số của chúng là giá trị. Trong ví dụ đầu tiên, bạn sử dụng một chuỗi làm đối số cho
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Bạn cũng có thể sử dụng danh sách, bộ dữ liệu hoặc bất kỳ phép lặp nào với các đối tượng lặp lại, như bạn thấy trong ví dụ thứ hai.

Có nhiều cách khác để tạo các trường hợp

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Tuy nhiên, họ không hoàn toàn ngụ ý đếm. Ví dụ: bạn có thể sử dụng một từ điển chứa các khóa và tính như thế này:

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 lặp lại trên
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1 và tạo ra một từ điển với các chữ cái dưới dạng các khóa và tần số của chúng là giá trị. Trong ví dụ đầu tiên, bạn sử dụng một chuỗi làm đối số cho
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Bạn cũng có thể sử dụng danh sách, bộ dữ liệu hoặc bất kỳ phép lặp nào với các đối tượng lặp lại, như bạn thấy trong ví dụ thứ hai.

Có nhiều cách khác để tạo các trường hợp

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Tuy nhiên, họ không hoàn toàn ngụ ý đếm. Ví dụ: bạn có thể sử dụng một từ điển chứa các khóa và tính như thế này:

Bộ đếm hiện có một nhóm ban đầu các cặp số phím. Cách này để tạo một thể hiện

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 rất hữu ích khi bạn cần cung cấp số lượng ban đầu của một nhóm đối tượng hiện có.

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 lặp lại trên
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1 và tạo ra một từ điển với các chữ cái dưới dạng các khóa và tần số của chúng là giá trị. Trong ví dụ đầu tiên, bạn sử dụng một chuỗi làm đối số cho
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Bạn cũng có thể sử dụng danh sách, bộ dữ liệu hoặc bất kỳ phép lặp nào với các đối tượng lặp lại, như bạn thấy trong ví dụ thứ hai.

Có nhiều cách khác để tạo các trường hợp

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Tuy nhiên, họ không hoàn toàn ngụ ý đếm. Ví dụ: bạn có thể sử dụng một từ điển chứa các khóa và tính như thế này:

Bộ đếm hiện có một nhóm ban đầu các cặp số phím. Cách này để tạo một thể hiện

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 rất hữu ích khi bạn cần cung cấp số lượng ban đầu của một nhóm đối tượng hiện có.

Bạn cũng có thể tạo ra kết quả tương tự bằng cách sử dụng các đối số từ khóa khi bạn gọi hàm xây dựng lớp:

>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>>

>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 lặp lại trên
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1 và tạo ra một từ điển với các chữ cái dưới dạng các khóa và tần số của chúng là giá trị. Trong ví dụ đầu tiên, bạn sử dụng một chuỗi làm đối số cho
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Bạn cũng có thể sử dụng danh sách, bộ dữ liệu hoặc bất kỳ phép lặp nào với các đối tượng lặp lại, như bạn thấy trong ví dụ thứ hai.

Có nhiều cách khác để tạo các trường hợp >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 5. Tuy nhiên, họ không hoàn toàn ngụ ý đếm. Ví dụ: bạn có thể sử dụng một từ điển chứa các khóa và tính như thế này:

Bộ đếm hiện có một nhóm ban đầu các cặp số phím. Cách này để tạo một thể hiện

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 rất hữu ích khi bạn cần cung cấp số lượng ban đầu của một nhóm đối tượng hiện có.

Bạn cũng có thể tạo ra kết quả tương tự bằng cách sử dụng các đối số từ khóa khi bạn gọi hàm xây dựng lớp:

>>>

>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})

>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

Một lần nữa, bạn có thể sử dụng phương pháp này để tạo đối tượng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 với trạng thái ban đầu cụ thể cho các khóa và đếm các cặp.

>>>

>>> from collections import Counter
>>> sales = Counter(apple=25, orange=15, banana=12)

>>> # Use a counter
>>> monday_sales = Counter(apple=10, orange=8, banana=3)
>>> sales.update(monday_sales)
>>> sales
Counter({'apple': 35, 'orange': 23, 'banana': 15})

>>> # Use a dictionary of counts
>>> tuesday_sales = {"apple": 4, "orange": 7, "tomato": 4}
>>> sales.update(tuesday_sales)
>>> sales
Counter({'apple': 39, 'orange': 30, 'banana': 15, 'tomato': 4})

Trong thực tế, nếu bạn sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 để đếm mọi thứ từ đầu, thì bạn không cần phải khởi tạo số lượng vì chúng có giá trị bằng không theo mặc định. Một khả năng khác có thể là khởi tạo số lượng đến
>>> from collections import Counter

>>> Counter(i=4, s=4, p=2, m=1)
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
0. Trong trường hợp đó, bạn có thể làm một cái gì đó như thế này:

>>> from collections import Counter

>>> Counter(set("mississippi"))
Counter({'p': 1, 's': 1, 'm': 1, 'i': 1})

Python đặt lưu trữ các đối tượng độc đáo, vì vậy cuộc gọi đến >>> from collections import Counter >>> inventory = Counter( ... apple=10, ... orange=15, ... banana=0, ... tomato=-15 ... ) 8 trong ví dụ này ném ra các chữ cái lặp đi lặp lại. Sau đó, bạn kết thúc với một trường hợp của mỗi chữ cái trong bản gốc có thể sử dụng được.

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 kế thừa giao diện của từ điển thông thường. Tuy nhiên, nó không cung cấp một triển khai làm việc
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
0 để ngăn chặn sự mơ hồ, chẳng hạn như
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
1. Trong ví dụ cụ thể này, mỗi chữ cái sẽ có số lượng mặc định là
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
2 mặc dù số lần xuất hiện hiện tại của nó trong đầu vào có thể điều chỉnh được.

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
0

Không có hạn chế đối với các đối tượng bạn có thể lưu trữ trong các khóa và giá trị của bộ đếm. Các phím có thể lưu trữ các đối tượng có thể băm, trong khi các giá trị có thể lưu trữ bất kỳ đối tượng nào. Tuy nhiên, để hoạt động như các bộ đếm, các giá trị phải là số nguyên đại diện cho số lượng.

Một điểm cuối cùng cần lưu ý về

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là nếu bạn cố gắng truy cập vào một khóa bị thiếu, thì bạn sẽ nhận được bằng không thay vì
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
13:

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
1

Vì chữ cái

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
14 không xuất hiện trong chuỗi
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1, bộ đếm trả về
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 khi bạn cố gắng truy cập số lượng cho chữ cái đó.

Tìm các đối tượng phổ biến nhất

Nếu bạn cần liệt kê một nhóm các đối tượng theo tần suất của chúng hoặc số lần chúng xuất hiện, thì bạn có thể sử dụng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17. Phương thức này trả về một danh sách
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
18 được sắp xếp theo số lượng đối tượng hiện tại. Các đối tượng có số lượng bằng nhau theo thứ tự chúng xuất hiện đầu tiên.

Nếu bạn cung cấp số nguyên

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
19 làm đối số cho
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17, thì bạn sẽ nhận được các đối tượng phổ biến nhất
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
19. Nếu bạn bỏ qua
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
19 hoặc đặt nó thành
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
23, thì
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17 trả về tất cả các đối tượng trong bộ đếm:

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
2

Vì chữ cái

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
14 không xuất hiện trong chuỗi
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1, bộ đếm trả về
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 khi bạn cố gắng truy cập số lượng cho chữ cái đó.

Tìm các đối tượng phổ biến nhất

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
3

Vì chữ cái

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
14 không xuất hiện trong chuỗi
>>> from collections import Counter

>>> inventory = Counter(
...     apple=10,
...     orange=15,
...     banana=0,
...     tomato=-15
... )
1, bộ đếm trả về
>>> from collections import Counter

>>> Counter({"i": 4, "s": 4, "p": 2, "m": 1})
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6 khi bạn cố gắng truy cập số lượng cho chữ cái đó.

Tìm các đối tượng phổ biến nhất

Nếu bạn cần liệt kê một nhóm các đối tượng theo tần suất của chúng hoặc số lần chúng xuất hiện, thì bạn có thể sử dụng >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 17. Phương thức này trả về một danh sách >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 18 được sắp xếp theo số lượng đối tượng hiện tại. Các đối tượng có số lượng bằng nhau theo thứ tự chúng xuất hiện đầu tiên.

Nếu bạn cung cấp số nguyên

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
19 làm đối số cho
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17, thì bạn sẽ nhận được các đối tượng phổ biến nhất
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
19. Nếu bạn bỏ qua
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
19 hoặc đặt nó thành
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
23, thì
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17 trả về tất cả các đối tượng trong bộ đếm:

  • Trong các ví dụ này, bạn sử dụng
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    17 để truy xuất các đối tượng thường xuyên nhất trong
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    02. Không có đối số hoặc với
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    23, phương thức trả về tất cả các đối tượng. Nếu đối số với
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    17 lớn hơn độ dài của bộ đếm hiện tại, thì bạn sẽ nhận lại tất cả các đối tượng.
  • Bạn cũng có thể nhận được các đối tượng phổ biến nhất bằng cách cắt kết quả của
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    17:
  • Việc cắt đầu tiên,
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    30, trả về tất cả các đối tượng theo thứ tự ngược lại theo số lượng tương ứng của chúng. Việc cắt
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    32 trích xuất hai đối tượng cuối cùng từ kết quả của
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    17. Bạn có thể điều chỉnh số lượng đối tượng phổ biến nhất bạn nhận được bằng cách thay đổi giá trị bù thứ hai trong toán tử cắt. Ví dụ: để có được ba đối tượng ít nhất, bạn có thể thay đổi
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    34 thành
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    35, v.v.

Nếu bạn muốn

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17 hoạt động chính xác, thì hãy đảm bảo rằng các giá trị trong bộ đếm của bạn có thể sắp xếp. Đây là điều cần ghi nhớ bởi vì, như đã đề cập, bạn có thể lưu trữ bất kỳ loại dữ liệu nào trong bộ đếm.

Đưa >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 5 vào hành động

Cho đến nay, bạn đã học được những điều cơ bản về việc tạo và sử dụng các đối tượng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 trong mã của bạn. Bây giờ bạn biết cách đếm số lần mỗi đối tượng xuất hiện theo một chuỗi nhất định hoặc có thể lặp lại. Bạn cũng biết làm thế nào:

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
4

Tạo bộ đếm với các giá trị ban đầu

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
5

Cập nhật bộ đếm hiện có

  • Nhận các đối tượng thường xuyên nhất trong một bộ đếm nhất định defines
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    42. This function takes a string-based file path as an argument.
  • Trong các phần sau, bạn sẽ mã hóa một số ví dụ thực tế để bạn có thể hiểu rõ hơn về mức độ hữu ích của Python,
    >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5.
    creates an empty counter for counting the letters in the target text.
  • Đếm các chữ cái trong tệp văn bản opens the input file for reading and creates an iterator over the file content.
  • Giả sử bạn có một tệp chứa một số văn bản. Bạn cần đếm số lần mỗi chữ cái xuất hiện trong văn bản. Ví dụ: giả sử bạn có một tệp có tên
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    40 với nội dung sau:
    starts a loop that iterates through the file content line by line.
  • Vâng, đây là Zen of Python, một danh sách các nguyên tắc hướng dẫn xác định triết lý cốt lõi đằng sau thiết kế Python. Để đếm số lần mỗi chữ cái xuất hiện trong văn bản này, bạn có thể tận dụng
    >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5 và viết một hàm như thế này:
    define a list comprehension to exclude nonletter characters from the current line using
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    43. The comprehension lowercases the letters before filtering them to prevent having separate lowercase and uppercase counts.
  • Ở đây, cách thức hoạt động của mã này: calls
    >>> from collections import Counter
    
    >>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})
    
    >>> letters.update("missouri")
    >>> letters
    Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
    
    8 on the letters counter to update the counts of each letter.

Dòng 5 xác định

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
42. Hàm này lấy một đường dẫn tệp dựa trên chuỗi làm đối số.

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
6

Dòng 6 tạo ra một bộ đếm trống để đếm các chữ cái trong văn bản đích.

Dòng 7 mở tệp đầu vào để đọc và tạo trình lặp qua nội dung tệp.

Dòng 8 bắt đầu một vòng lặp lặp qua dòng nội dung tệp từng dòng.

Các dòng 9 đến 11 Xác định một danh sách hiểu để loại trừ các ký tự không phải là dòng hiện tại bằng cách sử dụng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
43. Độ hiểu hiểu các chữ cái trước khi lọc chúng để ngăn chặn số lượng chữ thường và số lượng chữ hoa riêng biệt.

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
7

Dòng 12 gọi

>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8 trên bộ đếm các chữ cái để cập nhật số lượng của mỗi chữ cái.

Đây là cách bạn có thể sử dụng chức năng này:

>>>

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
8

Cuộc gọi đầu tiên đến

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
47 vẽ tần số của mỗi chữ cái trong chuỗi đầu vào. Cuộc gọi thứ hai lô bán hàng cho mỗi trái cây. Trong trường hợp này, bạn sử dụng một bộ đếm làm đầu vào. Ngoài ra, lưu ý rằng bạn có thể sử dụng
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
51 để thay đổi ký tự cho các thanh.

Khi bạn tạo biểu đồ thanh, sử dụng các thanh ngang cho phép bạn có đủ chỗ cho các nhãn danh mục. Một tính năng hữu ích khác của biểu đồ thanh là khả năng sắp xếp dữ liệu theo tần suất của chúng. Trong ví dụ này, bạn sắp xếp dữ liệu bằng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17.

Vẽ đồ thị dữ liệu phân loại với matplotlib

Thật tốt khi biết cách tạo biểu đồ thanh ASCII từ đầu bằng Python. Tuy nhiên, trong hệ sinh thái Python, bạn có thể tìm thấy một số công cụ để vẽ dữ liệu. Một trong những công cụ đó là matplotlib.

Matplotlib là một thư viện của bên thứ ba để tạo ra các hình ảnh trực quan thống kê, hoạt hình và tương tác trong Python. Bạn có thể cài đặt thư viện từ PYPI bằng cách sử dụng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
53 như bình thường:

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
9

Lệnh này cài đặt matplotlib trong môi trường Python của bạn. Khi bạn đã cài đặt thư viện, bạn có thể sử dụng nó để tạo biểu đồ thanh của mình và hơn thế nữa. Tại đây, cách bạn có thể tạo biểu đồ thanh tối thiểu với matplotlib:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
0

Cuộc gọi đầu tiên đến

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
47 vẽ tần số của mỗi chữ cái trong chuỗi đầu vào. Cuộc gọi thứ hai lô bán hàng cho mỗi trái cây. Trong trường hợp này, bạn sử dụng một bộ đếm làm đầu vào. Ngoài ra, lưu ý rằng bạn có thể sử dụng
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
51 để thay đổi ký tự cho các thanh.

Khi bạn tạo biểu đồ thanh, sử dụng các thanh ngang cho phép bạn có đủ chỗ cho các nhãn danh mục. Một tính năng hữu ích khác của biểu đồ thanh là khả năng sắp xếp dữ liệu theo tần suất của chúng. Trong ví dụ này, bạn sắp xếp dữ liệu bằng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17.

  1. Vẽ đồ thị dữ liệu phân loại với matplotlib holds a list of fruits.
  2. Thật tốt khi biết cách tạo biểu đồ thanh ASCII từ đầu bằng Python. Tuy nhiên, trong hệ sinh thái Python, bạn có thể tìm thấy một số công cụ để vẽ dữ liệu. Một trong những công cụ đó là matplotlib. holds the corresponding units sold per fruit.

Matplotlib là một thư viện của bên thứ ba để tạo ra các hình ảnh trực quan thống kê, hoạt hình và tương tác trong Python. Bạn có thể cài đặt thư viện từ PYPI bằng cách sử dụng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
53 như bình thường:

Hướng dẫn how do you create a counter in python? - làm thế nào để bạn tạo một bộ đếm trong python?

Lệnh này cài đặt matplotlib trong môi trường Python của bạn. Khi bạn đã cài đặt thư viện, bạn có thể sử dụng nó để tạo biểu đồ thanh của mình và hơn thế nữa. Tại đây, cách bạn có thể tạo biểu đồ thanh tối thiểu với matplotlib:

Ở đây, trước tiên bạn thực hiện nhập khẩu cần thiết. Sau đó, bạn tạo một bộ đếm với một số dữ liệu ban đầu về bán trái cây và sử dụng >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 17 để sắp xếp dữ liệu.

Bạn sử dụng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
55 để giải nén nội dung của
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
02 thành hai biến:

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
57 giữ một danh sách các loại trái cây.

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
58 giữ các đơn vị tương ứng được bán cho mỗi trái cây.

Sau đó, bạn tạo biểu đồ thanh bằng

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
59. Khi bạn chạy
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
60, bạn sẽ nhận được một cửa sổ như sau trên màn hình của mình:

Trong biểu đồ này, trục ngang hiển thị tên của mỗi loại trái cây độc đáo. Trong khi đó, trục thẳng đứng cho biết số lượng đơn vị được bán trên mỗi trái cây.

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
1

Tìm chế độ của một mẫu

  1. Trong thống kê, chế độ là giá trị (hoặc giá trị) thường xuyên nhất trong một mẫu dữ liệu. Ví dụ: nếu bạn có mẫu
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    61, thì chế độ là
    >>> from collections import Counter
    
    >>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})
    
    >>> letters.update("missouri")
    >>> letters
    Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
    
    2 vì nó xuất hiện thường xuyên nhất.
    holds the most common object. Using an underscore to name a variable suggests that you don’t need to use that variable in your code, but you need it as a placeholder.
  2. Trong một số trường hợp, chế độ không phải là một giá trị duy nhất. Hãy xem xét mẫu
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    63. Ở đây bạn có hai chế độ,
    >>> from collections import Counter
    
    >>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})
    
    >>> letters.update("missouri")
    >>> letters
    Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
    
    2 và
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    65, bởi vì cả hai đều xuất hiện cùng một số lần.
    holds the frequency of the most common object in
    >>> word = "mississippi"
    >>> counter = {}
    
    >>> for letter in word:
    ...     counter[letter] = counter.get(letter, 0) + 1
    ...
    
    >>> counter
    {'m': 1, 'i': 4, 's': 4, 'p': 2}
    
    48.

Bạn thường sử dụng chế độ để mô tả dữ liệu phân loại. Ví dụ: chế độ rất hữu ích khi bạn cần biết danh mục nào là phổ biến nhất trong dữ liệu của bạn.

Để tìm chế độ có Python, bạn cần đếm số lần xuất hiện của mỗi giá trị trong mẫu của bạn. Sau đó, bạn phải tìm giá trị thường xuyên nhất (hoặc giá trị). Nói cách khác, giá trị với số lần xuất hiện cao nhất. Nghe có vẻ như một cái gì đó bạn có thể làm bằng cách sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 và
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
17.

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
2

Ở đây, một chức năng tính toán chế độ của một mẫu:

Bên trong >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 68, trước tiên bạn đếm số lần mỗi lần quan sát xuất hiện trong đầu vào >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 48. Sau đó, bạn sử dụng >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 70 để có được tần suất quan sát phổ biến nhất. Vì >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 17 trả về một danh sách các bộ dữ liệu trong mẫu >>> word = "mississippi" >>> counter = {} >>> for letter in word: ... counter[letter] = counter.get(letter, 0) + 1 ... >>> counter {'m': 1, 'i': 4, 's': 4, 'p': 2} 72, bạn cần lấy lại bộ dữ liệu tại Index >>> from collections import Counter >>> Counter({"i": 4, "s": 4, "p": 2, "m": 1}) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 6, là phổ biến nhất trong danh sách. Sau đó, bạn giải nén tuple thành hai biến:

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
74 giữ đối tượng phổ biến nhất. Sử dụng một dấu gạch dưới để đặt tên cho một biến cho thấy rằng bạn không cần phải sử dụng biến đó trong mã của mình, nhưng bạn cần nó như một người giữ chỗ.

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
3

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
75 giữ tần số của đối tượng phổ biến nhất trong
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
48.

Danh sách hiểu biết so sánh

>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
77 của mỗi đối tượng với số lượng của mục tiêu phổ biến nhất,
>>> word = "mississippi"
>>> counter = {}

>>> for letter in word:
...     counter[letter] = counter.get(letter, 0) + 1
...

>>> counter
{'m': 1, 'i': 4, 's': 4, 'p': 2}
75. Điều này cho phép bạn xác định nhiều chế độ trong một mẫu nhất định.

Sử dụng các phiên bản >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 5 làm multiset

Trong toán học, một multiset đại diện cho một biến thể của một tập hợp cho phép nhiều phiên bản của các yếu tố của nó. Số lượng các trường hợp của một phần tử nhất định được gọi là bội số của nó. Vì vậy, bạn có thể có một multiset như {1, 1, 2, 3, 3, 3, 4, 4}, nhưng phiên bản đặt sẽ được giới hạn ở {1, 2, 3, 4}.multiplicity. So, you can have a multiset like {1, 1, 2, 3, 3, 3, 4, 4}, but the set version will be limited to {1, 2, 3, 4}.

Giống như trong toán học, các bộ python thông thường chỉ cho phép các yếu tố duy nhất:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
4

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các khóa trong một ví dụ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
5

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các khóa trong một ví dụ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
6

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các khóa trong một ví dụ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

Ở đây, trước tiên bạn tạo một multiset bằng cách sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các phím tương đương với bộ bạn đã thấy trong ví dụ trên. Các giá trị giữ tính đa dạng của mỗi phần tử trong tập hợp.

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 thực hiện một loạt các tính năng multiset mà bạn có thể sử dụng để giải quyết một số vấn đề. Một trường hợp sử dụng phổ biến cho một cuộc đua lớn trong lập trình là một giỏ hàng vì nó có thể chứa nhiều hơn một phiên bản của mỗi sản phẩm, tùy thuộc vào nhu cầu của khách hàng:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
7

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các khóa trong một ví dụ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

Ở đây, trước tiên bạn tạo một multiset bằng cách sử dụng >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 5. Các phím tương đương với bộ bạn đã thấy trong ví dụ trên. Các giá trị giữ tính đa dạng của mỗi phần tử trong tập hợp.

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 thực hiện một loạt các tính năng multiset mà bạn có thể sử dụng để giải quyết một số vấn đề. Một trường hợp sử dụng phổ biến cho một cuộc đua lớn trong lập trình là một giỏ hàng vì nó có thể chứa nhiều hơn một phiên bản của mỗi sản phẩm, tùy thuộc vào nhu cầu của khách hàng:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
8

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các khóa trong một ví dụ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

Ở đây, trước tiên bạn tạo một multiset bằng cách sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các phím tương đương với bộ bạn đã thấy trong ví dụ trên. Các giá trị giữ tính đa dạng của mỗi phần tử trong tập hợp.

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 thực hiện một loạt các tính năng multiset mà bạn có thể sử dụng để giải quyết một số vấn đề. Một trường hợp sử dụng phổ biến cho một cuộc đua lớn trong lập trình là một giỏ hàng vì nó có thể chứa nhiều hơn một phiên bản của mỗi sản phẩm, tùy thuộc vào nhu cầu của khách hàng:

>>>

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
9

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
0

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các khóa trong một ví dụ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
1

Khi bạn tạo một bộ như thế này, Python sẽ loại bỏ tất cả các phiên bản lặp lại của mỗi số. Kết quả là, bạn chỉ nhận được một bộ với các yếu tố duy nhất.

Python hỗ trợ khái niệm multiset với >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 5. Các khóa trong một ví dụ >>> from collections import Counter >>> # Use a string as an argument >>> Counter("mississippi") Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) >>> # Use a list as an argument >>> Counter(list("mississippi")) Counter({'i': 4, 's': 4, 'p': 2, 'm': 1}) 5 là duy nhất, vì vậy chúng tương đương với một bộ. Số lượng giữ tính đa bội hoặc số lượng phiên bản của mỗi phần tử:

Ở đây, trước tiên bạn tạo một multiset bằng cách sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5. Các phím tương đương với bộ bạn đã thấy trong ví dụ trên. Các giá trị giữ tính đa dạng của mỗi phần tử trong tập hợp.

Giả sử bạn có một cuộc tấn công nhiều với hàng tồn kho trái cây hiện tại của bạn và bạn cần cập nhật nó. Sau đó, bạn có thể chạy một số hoạt động sau:

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
2

Ở đây, bạn sử dụng một số cách để cung cấp dữ liệu đầu vào cho

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16. Trong mọi trường hợp, bạn cập nhật số lượng của từng đối tượng duy nhất bằng cách trừ các số lượng được cung cấp trong dữ liệu đầu vào. Bạn có thể nghĩ
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16 là đối tác của
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8.

Thực hiện số học với các yếu tố đa dạng

Với

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16 và
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8, bạn có thể kết hợp các bộ đếm bằng cách trừ và thêm số lượng phần tử tương ứng. Ngoài ra, Python cung cấp các toán tử tiện dụng để bổ sung (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
22) và phép trừ (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
23) của số lượng phần tử, cũng như các toán tử cho giao điểm (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
24) và Union (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
25). Toán tử giao nhau trả về mức tối thiểu của số lượng tương ứng, trong khi toán tử công đoàn trả về tối đa số lượng.intersection operator returns the minimum of corresponding counts, while the union operator returns the maximum of counts.

Dưới đây là một vài ví dụ về cách tất cả các nhà khai thác này hoạt động:

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
3

Ở đây, bạn sử dụng một số cách để cung cấp dữ liệu đầu vào cho

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16. Trong mọi trường hợp, bạn cập nhật số lượng của từng đối tượng duy nhất bằng cách trừ các số lượng được cung cấp trong dữ liệu đầu vào. Bạn có thể nghĩ
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16 là đối tác của
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8.

Thực hiện số học với các yếu tố đa dạng

Với

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16 và
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8, bạn có thể kết hợp các bộ đếm bằng cách trừ và thêm số lượng phần tử tương ứng. Ngoài ra, Python cung cấp các toán tử tiện dụng để bổ sung (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
22) và phép trừ (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
23) của số lượng phần tử, cũng như các toán tử cho giao điểm (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
24) và Union (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
25). Toán tử giao nhau trả về mức tối thiểu của số lượng tương ứng, trong khi toán tử công đoàn trả về tối đa số lượng.

Dưới đây là một vài ví dụ về cách tất cả các nhà khai thác này hoạt động:unary operations. For example, you can get the items with positive and negative counts using the plus (

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
22) and minus (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
23) signs, respectively:

>>>

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
4

Ở đây, bạn sử dụng một số cách để cung cấp dữ liệu đầu vào cho

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16. Trong mọi trường hợp, bạn cập nhật số lượng của từng đối tượng duy nhất bằng cách trừ các số lượng được cung cấp trong dữ liệu đầu vào. Bạn có thể nghĩ
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16 là đối tác của
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8.

Thực hiện số học với các yếu tố đa dạng

Với

>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
16 và
>>> from collections import Counter

>>> letters = Counter({"i": 4, "s": 4, "p": 2, "m": 1})

>>> letters.update("missouri")
>>> letters
Counter({'i': 6, 's': 6, 'p': 2, 'm': 2, 'o': 1, 'u': 1, 'r': 1})
8, bạn có thể kết hợp các bộ đếm bằng cách trừ và thêm số lượng phần tử tương ứng. Ngoài ra, Python cung cấp các toán tử tiện dụng để bổ sung (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
22) và phép trừ (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
23) của số lượng phần tử, cũng như các toán tử cho giao điểm (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
24) và Union (
>>> from collections import defaultdict

>>> word = "mississippi"
>>> counter = defaultdict(int)

>>> for letter in word:
...     counter[letter] += 1
...

>>> counter
defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
25). Toán tử giao nhau trả về mức tối thiểu của số lượng tương ứng, trong khi toán tử công đoàn trả về tối đa số lượng.

Dưới đây là một vài ví dụ về cách tất cả các nhà khai thác này hoạt động:

  • Tại đây, trước tiên bạn thêm hai bộ đếm cùng nhau bằng toán tử bổ sung (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    22). Bộ đếm kết quả chứa cùng các khóa (phần tử), trong khi các giá trị tương ứng của chúng (bội số) giữ tổng số lượng từ cả hai quầy liên quan.several repeated objects using different Python tools
  • Ví dụ thứ hai cho thấy cách thức hoạt động của toán tử trừ (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    23). Lưu ý rằng số lượng âm và 0 dẫn đến không bao gồm cặp số phím trong bộ đếm kết quả. Vì vậy, bạn không thấy
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    28 trong đầu ra vì 8 - 9 = -1.
    >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5
  • Toán tử giao nhau (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    24) trích xuất các đối tượng có số lượng thấp hơn từ cả hai bộ đếm, trong khi toán tử công đoàn (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    25) trả về các đối tượng có số lượng cao hơn từ cả hai bộ đếm liên quan.most common objects in a particular counter
  • >>> from collections import Counter
    
    >>> # Use a string as an argument
    >>> Counter("mississippi")
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    >>> # Use a list as an argument
    >>> Counter(list("mississippi"))
    Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
    
    5 cũng hỗ trợ một số hoạt động đơn. Ví dụ: bạn có thể nhận được các mục có số lượng tích cực và tiêu cực bằng cách sử dụng các dấu hiệu cộng (____222) và trừ (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    23), tương ứng::object counts
  • Khi bạn sử dụng dấu cộng (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    22) như một toán tử Unary trên một bộ đếm hiện có, bạn sẽ nhận được tất cả các đối tượng có số lượng lớn hơn 0. Mặt khác, nếu bạn sử dụng dấu trừ (
    >>> from collections import defaultdict
    
    >>> word = "mississippi"
    >>> counter = defaultdict(int)
    
    >>> for letter in word:
    ...     counter[letter] += 1
    ...
    
    >>> counter
    defaultdict(<class 'int'>, {'m': 1, 'i': 4, 's': 4, 'p': 2})
    
    23), bạn sẽ nhận được các đối tượng có số lượng âm. Lưu ý rằng kết quả loại trừ các đối tượng có số lượng bằng 0 trong cả hai trường hợp.further computations

Sự kết luận

Khi bạn cần đếm một số đối tượng lặp đi lặp lại trong Python, bạn có thể sử dụng

>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
5 từ
>>> from collections import Counter

>>> # Use a string as an argument
>>> Counter("mississippi")
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})

>>> # Use a list as an argument
>>> Counter(list("mississippi"))
Counter({'i': 4, 's': 4, 'p': 2, 'm': 1})
6. Lớp này cung cấp một cách hiệu quả và pythonic để đếm mọi thứ mà không cần sử dụng các kỹ thuật truyền thống liên quan đến các vòng lặp và cấu trúc dữ liệu lồng nhau. Điều này có thể làm cho mã của bạn sạch hơn và nhanh hơn. This tutorial has a related video course created by the Real Python team. Watch it together with the written tutorial to deepen your understanding: Counting With Python's Counter

Bộ đếm () trong Python là gì?

Counter là một lớp con của Dict được thiết kế đặc biệt để đếm các đối tượng có thể băm trong Python.Đó là một từ điển lưu trữ các đối tượng là các khóa và được tính là giá trị.Để đếm với bộ đếm, bạn thường cung cấp một chuỗi hoặc có thể lặp lại của các đối tượng có thể băm làm đối số cho hàm tạo của lớp.a subclass of dict that's specially designed for counting hashable objects in Python. It's a dictionary that stores objects as keys and counts as values. To count with Counter , you typically provide a sequence or iterable of hashable objects as an argument to the class's constructor.

Mô -đun nào là đối trọng trong Python?

Một quầy là một lớp con Dict để đếm các đối tượng có thể băm.Đó là một bộ sưu tập trong đó các yếu tố được lưu trữ dưới dạng các khóa từ điển và số lượng của chúng được lưu trữ dưới dạng giá trị từ điển.Số lượng được phép là bất kỳ giá trị số nguyên nào bao gồm số không hoặc số âm.a dict subclass for counting hashable objects. It is a collection where elements are stored as dictionary keys and their counts are stored as dictionary values. Counts are allowed to be any integer value including zero or negative counts.

Counter trong Python trở lại là gì?

Python Counter là một lớp con của lớp Dict hoặc Dictionary.Nó theo dõi tần số của từng phần tử trong container.Nó lấy một đối số một đối tượng (như danh sách) và trả lại từ điển.a dictionary.