Làm thế nào để có được kích thước của cửa sổ PyGame?
Trong bài viết này, chúng ta sẽ tìm hiểu Cách lấy kích thước của Cửa sổ PyGame...
Category: Python
Counter là một lớp con của lớp dict trong mô-đun collections của Python. Chúng được sử dụng để đếm số lần xuất hiện của các phần tử trong một iterable hoặc để đếm tần suất của các mục trong một ánh xạ (mapping). Counter cung cấp một cách sạch sẽ và hiệu quả để tính tổng các phần tử và thực hiện nhiều thao tác khác liên quan đến việc đếm.
Ví dụ:
from collections import Counter
# Ví dụ danh sách các phần tử
val = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
# Tạo bộ đếm
ctr = Counter(val)
print(ctr)
Đầu ra:
Counter({4: 4, 3: 3, 2: 2, 1: 1})
Trong ví dụ này, Bộ đếm đếm số lần xuất hiện của từng phần tử trong danh sách.
Chúng ta hãy cùng xem xét chi tiết về bộ đếm trong Python:
class collections.Counter([iterable-or-mapping])
Tham số:
Hàm tạo của Counter có thể được gọi theo bất kỳ cách nào sau đây:
Với một chuỗi các mục
Với một từ điển chứa các khóa và số lượng
Với các đối số từ khóa ánh xạ tên chuỗi thành số lượng
Kiểu trả về: Trả về một đối tượng Counter (về mặt chức năng, nó giống như từ điển)
Để sử dụng Counter, trước tiên chúng ta cần nhập nó từ mô-đun collections.
from collections import Counter
# Tạo một bộ đếm từ danh sách
ctr1 = Counter([1, 2, 2, 3, 3, 3])
# Tạo một bộ đếm từ một từ điển
ctr2 = Counter({1: 2, 2: 3, 3: 1})
# Tạo một bộ đếm từ một chuỗi
ctr3 = Counter('hello')
print(ctr1)
print(ctr2)
print(ctr3)
Đầu ra:
Counter({3: 3, 2: 2, 1: 1})
Counter({2: 3, 1: 2, 3: 1})
Counter({'l': 2, 'h': 1, 'e': 1, 'o': 1})
Trong các ví dụ này, chúng ta tạo Bộ đếm từ các loại đối tượng lặp khác nhau.
Chúng ta có thể truy cập số lượng của từng phần tử bằng cách sử dụng phần tử làm khóa. Nếu một phần tử không có trong Counter, nó sẽ trả về 0.
Ví dụ:
from collections import Counter
ctr = Counter([1, 2, 2, 3, 3, 3])
# Truy cập số lượng phần tử
print(ctr[1])
print(ctr[2])
print(ctr[3])
print(ctr[4]) # (phần tử không có)
Đầu ra:
1
2
3
0
Ví dụ này cho thấy cách truy cập vào số lượng phần tử cụ thể trong Bộ đếm.
Counter có thể được cập nhật bằng cách thêm phần tử mới hoặc cập nhật số lượng phần tử hiện có. Sử dụng phương thức update() để thực hiện điều này.
Ví dụ:
from collections import Counter
ctr = Counter([1, 2, 2])
# Adding new elements
ctr.update([2, 3, 3, 3])
print(ctr)
Đầu ra:
Counter({2: 3, 3: 3, 1: 1})
Trả về một trình lặp qua các phần tử, mỗi phần tử được lặp lại nhiều lần theo số lượng của nó. Thứ tự trả về là tùy ý.
from collections import Counter
ctr = Counter([1, 2, 2, 3, 3, 3])
items = list(ctr.elements())
print(items)
Đầu ra:
[1, 2, 2, 3, 3, 3]
Giải thích: phương thức elements() trả về một trình lặp tạo ra tất cả các phần tử trong Counter.
Trả về danh sách n phần tử phổ biến nhất và số lượng tương ứng, theo thứ tự giảm dần. Nếu không truyền tham số n, nó sẽ trả về tất cả các phần tử.
from collections import Counter
ctr = Counter([1, 2, 2, 3, 3, 3])
common = ctr.most_common(2)
print(common)
Đầu ra:
[(3, 3), (2, 2)]
Trừ số lượng phần tử bằng cách sử dụng một đối tượng iterable hoặc mapping khác. Số lượng có thể trở thành âm nếu bị trừ quá nhiều.
from collections import Counter
ctr = Counter([1, 2, 2, 3, 3, 3])
ctr.subtract([2, 3, 3])
print(ctr)
Đầu ra:
Counter({1: 1, 2: 1, 3: 1})
Giải thích: phương thức minus() giảm số lượng các phần tử được tìm thấy trong một đối tượng lặp khác.
Counter hỗ trợ các phép toán như: cộng, trừ, giao (intersection) và hợp (union).
Ví dụ:
from collections import Counter
ctr1 = Counter([1, 2, 2, 3])
ctr2 = Counter([2, 3, 3, 4])
# Phép cộng
print(ctr1 + ctr2)
# Phép trừ
print(ctr1 - ctr2)
# Intersection
print(ctr1 & ctr2)
# Union
print(ctr1 | ctr2)
Đầu ra:
Counter({2: 3, 3: 3, 1: 1, 4: 1})
Counter({1: 1, 2: 1})
Counter({2: 1, 3: 1})
Counter({2: 2, 3: 2, 1: 1, 4: 1})
Published on Jun 19, 2025
Trong bài viết này, chúng ta sẽ tìm hiểu Cách lấy kích thước của Cửa sổ PyGame . Lập trình game ngày nay rất bổ ích và có thể được sử dụng trong...
Giao diện người dùng đồ họa ( GUI ) đóng vai trò then chốt trong việc nâng cao tương tác và trải nghiệm của người dùng. Python, được biết đến với....
Python Module là một tệp chứa các hàm, lớp, its và biến tích hợp. Có nhiều module Python , mỗi module có chức năng riêng. Trong bài viết nà...
Python MySQL Connector là trình điều khiển Python giúp tích hợp Python và MySQL. Thư viện Python MySQL này cho phép chuyển đổi giữa các kiểu dữ liệu...
MongoDB là một cơ sở dữ liệu NoSQL phổ biến được thiết kế để lưu trữ và quản lý dữ liệu một cách linh hoạt và có quy mô. Không giống như các cơ sở...
Quản lý thư mục Python đề cập đến việc xử lý và tương tác với các thư mục (folder) trên hệ thống tệp bằng Python. Nó bao gồm việc tạo, xóa, điều hướng...