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 5 từ 6 cung cấp một giải pháp sạch sẽ, hiệu quả và pythonic. 5 from 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 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:
Bạn cũng sẽ tìm hiểu về những điều cơ bản của việc sử dụng 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: >>>
Vòng lặp 1 lặp lại các chữ cái trong 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 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 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 5 với 6 làm giá trị mặc định:>>>
Vòng lặp 1 lặp lại các chữ cái trong 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 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 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 5 với 6 làm giá trị mặc định:>>>
Vòng lặp 1 lặp lại các chữ cái trong 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 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 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 5 với 6 làm giá trị mặc định:Khi bạn gọi 7 theo cách này, bạn sẽ nhận được số lượng hiện tại của 8 hoặc 6 (mặc định) nếu chữ cái bị thiếu. Sau đó, bạn tăng số lượng bằng 0 và lưu trữ nó theo 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 3 bằng cách sử dụng 2 với 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 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 6 làm hàm nhà máy, giá trị ban đầu là 6, kết quả là gọi 6 mà không có đối số.Xây dựng quầyCó một vài cách để bạn tạo các trường hợp 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 5:>>>
5 lặp lại trên 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 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 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:>>>
5 lặp lại trên 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 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 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:>>> 5 lặp lại trên 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 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 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 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ó.>>> 5 lặp lại trên 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 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 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 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:
>>>
5 lặp lại trên 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 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 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: >>>
Một lần nữa, bạn có thể sử dụng phương pháp này để tạo đối tượng 5 với trạng thái ban đầu cụ thể cho các khóa và đếm các cặp.>>>
Trong thực tế, nếu bạn sử dụng 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 0. Trong trường hợp đó, bạn có thể làm một cái gì đó như thế này:
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. 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 0 để ngăn chặn sự mơ hồ, chẳng hạn như 1. Trong ví dụ cụ thể này, mỗi chữ cái sẽ có số lượng mặc định là 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.>>> 0Khô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ề 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ì 13:>>> 1Vì chữ cái 14 không xuất hiện trong chuỗi 1, bộ đếm trả về 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ấtNế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 17. Phương thức này trả về một danh sách 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 19 làm đối số cho 17, thì bạn sẽ nhận được các đối tượng phổ biến nhất 19. Nếu bạn bỏ qua 19 hoặc đặt nó thành 23, thì 17 trả về tất cả các đối tượng trong bộ đếm:>>> 2Vì chữ cái 14 không xuất hiện trong chuỗi 1, bộ đếm trả về 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 >>> 3Vì chữ cái 14 không xuất hiện trong chuỗi 1, bộ đếm trả về 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 19 làm đối số cho 17, thì bạn sẽ nhận được các đối tượng phổ biến nhất 19. Nếu bạn bỏ qua 19 hoặc đặt nó thành 23, thì 17 trả về tất cả các đối tượng trong bộ đếm:
Nếu bạn muốn 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 độngCho đế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 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: 4Tạo bộ đếm với các giá trị ban đầu 5Cập nhật bộ đếm hiện có
Dòng 5 xác định 42. Hàm này lấy một đường dẫn tệp dựa trên chuỗi làm đối số.>>> 6Dò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 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. 7Dòng 12 gọi 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: >>> 8Cuộc gọi đầu tiên đến 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 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 17.Vẽ đồ thị dữ liệu phân loại với matplotlibThậ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 53 như bình thường: 9Lệ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: >>> 0Cuộc gọi đầu tiên đến 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 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 17.
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 53 như bình thường: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 55 để giải nén nội dung của 02 thành hai biến: 57 giữ một danh sách các loại trái cây. 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 59. Khi bạn chạy 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. 1Tìm chế độ của một mẫu
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 5 và 17.>>> 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: 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ỗ.>>> 3 75 giữ tần số của đối tượng phổ biến nhất trong 48.Danh sách hiểu biết so sánh 77 của mỗi đối tượng với số lượng của mục tiêu phổ biến nhất, 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 multisetTrong 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: >>> 4Khi 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 5. Các khóa trong một ví dụ 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ử:>>> 5Khi 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 5. Các khóa trong một ví dụ 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ử:>>> 6Khi 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 5. Các khóa trong một ví dụ 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 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. 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:>>> 7Khi 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 5. Các khóa trong một ví dụ 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. 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:>>> 8Khi 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 5. Các khóa trong một ví dụ 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 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. 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:>>> 9Khi 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. >>> 0Khi 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 5. Các khóa trong một ví dụ 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ử:>>> 1Khi 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 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: >>> 2Ở đây, bạn sử dụng một số cách để cung cấp dữ liệu đầu vào cho 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ĩ 16 là đối tác của 8.Thực hiện số học với các yếu tố đa dạngVới 16 và 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 ( 22) và phép trừ ( 23) của số lượng phần tử, cũng như các toán tử cho giao điểm ( 24) và Union ( 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: >>> 3Ở đây, bạn sử dụng một số cách để cung cấp dữ liệu đầu vào cho 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ĩ 16 là đối tác của 8.Thực hiện số học với các yếu tố đa dạng Với 16 và 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 ( 22) và phép trừ ( 23) của số lượng phần tử, cũng như các toán tử cho giao điểm ( 24) và Union ( 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 ( 22) and minus ( 23) signs, respectively:>>> 4Ở đây, bạn sử dụng một số cách để cung cấp dữ liệu đầu vào cho 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ĩ 16 là đối tác của 8.Thực hiện số học với các yếu tố đa dạngVới 16 và 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 ( 22) và phép trừ ( 23) của số lượng phần tử, cũng như các toán tử cho giao điểm ( 24) và Union ( 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:
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 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. |