Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Đếm Xuất Hiện Tất Cả Phần Tử List Trong Tuple (Count Occurrence of All Elements of List in a Tuple) trong Python


Ta có một list và một tuple. Ta khớp các phần tử của list với tuple và đếm số phần tử trong tuple khớp với list.

Với Counter

Ta dùng Counter từ collections để đếm mỗi phần tử trong tuple. Lại thiết kế for và in để tìm phần tử có mặt trong list và trong kết quả đếm từ tuple.

Ví dụ

from collections import Counter Atup = ('Mon', 'Wed', 'Mon', 'Tue', 'Thu') Alist = ['Mon', 'Thu'] # Tuple và List cho trước print("Given tuple :\n",Atup) print("Given list :\n",Alist) cnt = Counter(Atup) res = sum(cnt[i] for i in Alist) print("Number of list elements in the tuple: \n",res)

Đầu ra

Chạy mã trên cho kết quả sau:

Given tuple : ('Mon', 'Wed', 'Mon', 'Tue', 'Thu') Given list : ['Mon', 'Thu'] Number of list elements in the tuple: 3

Với sum()

Trong cách này ta áp dụng sum. Nếu giá trị từ tuple có mặt trong list trả về 1 ngược lại 0. Vậy sum sẽ cho kết quả chỉ những phần tử từ list có mặt trong tuple.

Ví dụ

Atup = ('Mon', 'Wed', 'Mon', 'Tue', 'Thu') Alist = ['Mon', 'Thu','Mon'] Alist = set(Alist) # Tuple và List cho trước print("Given tuple :\n",Atup) print("Given list :\n",Alist) res = sum(1 for x in Atup if x in Alist) print("Number of list elements in the tuple: \n",res)

Đầu ra

Chạy mã trên cho kết quả sau:

Given tuple : ('Mon', 'Wed', 'Mon', 'Tue', 'Thu') Given list : {'Mon', 'Thu'} Number of list elements in the tuple: 3