Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengira Kejadian Item dengan Cekap dalam Senarai Python?

Bagaimana untuk Mengira Kejadian Item dengan Cekap dalam Senarai Python?

Barbara Streisand
Barbara Streisandasal
2024-12-25 17:51:10377semak imbas

How to Efficiently Count Item Occurrences in a Python List?

Mengira Kejadian Item Senarai Tertentu dalam Python

Selalunya, apabila bekerja dengan senarai dalam Python, ia menjadi perlu untuk mengira bilangan kejadian elemen tertentu dalam senarai. Tutorial ini akan menyediakan panduan terperinci tentang cara mengira kejadian item dalam senarai Python dengan berkesan.

Menggunakan Kaedah count()

Untuk mengira kejadian satu item dalam senarai, Python menawarkan kaedah mudah dipanggil count(). Hanya tentukan item yang anda ingin kira sebagai hujah kepada kaedah count() dan ia akan mengembalikan bilangan kejadian item tersebut dalam senarai.

>>> [1, 2, 3, 4, 1, 4, 1].count(1)
3

Awas: Lambat untuk Berbilang Item

Walaupun kaedah count() cekap untuk mengira item tunggal, adalah penting untuk ambil perhatian bahawa ia menjadi tidak cekap apabila mengira berbilang item dalam senarai yang sama. Ini kerana setiap panggilan count() berulang melalui keseluruhan senarai, membawa kepada kerumitan masa O(n * n).

Alternatif untuk Berbilang Item: Counter

Jika anda perlu mengira berbilang item berbeza dalam senarai, penyelesaian yang lebih cekap ialah menggunakan kelas Counter daripada modul koleksi. Counter menyediakan cara ringkas untuk mengira kejadian item dengan kerumitan pengiraan O(n):

from collections import Counter

>>> list1 = [1, 2, 3, 4, 1, 4, 1]
>>> counter = Counter(list1)
>>> counter[1]
3
>>> counter[4]
2

Dengan menggunakan teknik ini, anda boleh mengira kejadian item dengan berkesan dalam senarai Python, kedua-duanya untuk item individu dan berbilang item dengan cekap.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Kejadian Item dengan Cekap dalam Senarai Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn