Rumah >pembangunan bahagian belakang >Tutorial Python >Cara menggunakan modul koleksi untuk operasi struktur data lanjutan dalam Python 2.x

Cara menggunakan modul koleksi untuk operasi struktur data lanjutan dalam Python 2.x

王林
王林asal
2023-07-30 11:36:22799semak imbas

Cara menggunakan modul koleksi untuk operasi struktur data lanjutan dalam Python 2.x

Pengenalan:
Dalam perpustakaan standard Python, modul koleksi menyediakan beberapa struktur data lanjutan yang boleh melaksanakan pelbagai operasi dengan mudah. Artikel ini akan memperkenalkan beberapa struktur data yang disediakan terutamanya oleh modul koleksi dan memberikan contoh kod yang berkaitan.

1. Counter
Counter ialah alat pembilang yang ringkas dan berkuasa yang boleh digunakan untuk mengira bilangan kejadian setiap elemen dalam objek boleh lelar.

Kod sampel:

from collections import Counter

# 统计一个列表中每个元素的出现次数
lst = [1, 1, 2, 3, 4, 4, 4, 5, 6, 6, 7]
counter = Counter(lst)
print(counter)

# 输出结果
# Counter({4: 3, 1: 2, 6: 2, 2: 1, 3: 1, 5: 1, 7: 1})

# 统计一个字符串中每个字符的出现次数
s = "Hello, World!"
counter = Counter(s)
print(counter)

# 输出结果
# Counter({'l': 3, 'o': 2, 'H': 1, 'e': 1, ',': 1, ' ': 1, 'W': 1, 'r': 1, 'd': 1, '!': 1})

# 获取出现次数最多的前3个元素及其次数
print(counter.most_common(3))

# 输出结果
# [('l', 3), ('o', 2), ('H', 1)]

2. defaultdict
defaultdict ialah subkelas jenis kamus terbina dalam Ia mengatasi kaedah: __missing__(), yang boleh mengembalikan nilai lalai apabila mendapat nilai kunci yang tidak diketahui.

Contoh kod:

from collections import defaultdict

# 声明一个defaultdict,键的默认值设为0
d = defaultdict(int)
print(d[1])

# 输出结果
# 0

# 声明一个defaultdict,键的默认值设为[]
d = defaultdict(list)
print(d[1])

# 输出结果
# []

# 声明一个defaultdict,键的默认值设为None
d = defaultdict(lambda: None)
print(d[1])

# 输出结果
# None

3 OrderedDict
OrderedDict ialah kamus tersusun yang mengingati susunan unsur-unsur yang dimasukkan.

Kod sampel:

from collections import OrderedDict

# 声明一个OrderedDict
d = OrderedDict()

# 添加键值对
d[1] = 'a'
d[2] = 'b'
d[3] = 'c'

# 遍历字典
for k, v in d.items():
    print(k, v)

# 输出结果
# 1 a
# 2 b
# 3 c

4. deque
deque ialah baris gilir dua hujung, yang selamat untuk benang dan boleh mengendalikan baris gilir dan tindanan dengan cekap.

Kod sampel:

from collections import deque

# 创建一个双端队列
d = deque()

# 添加元素
d.append(1)
d.append(2)
d.append(3)

# 输出队列元素
print(d)

# 输出结果
# deque([1, 2, 3])

# 弹出元素
print(d.popleft())
print(d.pop())

# 输出结果
# 1
# 3

Ringkasan:
Artikel ini memperkenalkan penggunaan asas beberapa struktur data lanjutan yang disediakan oleh modul koleksi. Counter boleh mengira bilangan kejadian unsur dengan mudah, defaultdict boleh menetapkan nilai lalai bagi sesuatu kunci, OrderedDict boleh mengingati susunan sisipan elemen, dan deque boleh melaksanakan operasi baris gilir dan tindanan dengan cekap. Dalam pembangunan Python sebenar, penggunaan fleksibel struktur data ini akan membawa pengalaman pengaturcaraan yang lebih cekap.

Atas ialah kandungan terperinci Cara menggunakan modul koleksi untuk operasi struktur data lanjutan dalam Python 2.x. 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