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

Python - Kiểm tra một list có nằm trong list khác không

Cho hai list Python khác nhau, tìm xem list đầu có phải phần của list sau không.

Dùng map và join

Chuyển list thành chuỗi ngăn cách bằng dấu phẩy, dùng in kiểm tra.

Ví dụ

listA = ['x', 'y', 't']
listB = ['t', 'z', 'a', 'x', 'y', 't']
print("ListA:", ', '.join(map(str, listA)))
print("ListB:", ', '.join(map(str, listB)))
res = ', '.join(map(str, listA)) in ', '.join(map(str, listB))
print("List A là phần của List B" if res else "List A KHÔNG phải phần của List B")

Kết quả

ListA: x, y, t
ListB: t, z, a, x, y, t
List A là phần của List B

Dùng range và len

Duyệt kiểm tra slice con có khớp listA không.

Ví dụ

listA = ['x', 'y', 't']
listB = ['t', 'z', 'a', 'x', 'y', 't']
n = len(listA)
res = any(listA == listB[i:i+n] for i in range(len(listB) - n + 1))
print("List A là phần của List B" if res else "List A KHÔNG phải phần của List B")

Kết quả

List A là phần của List B