Tìm chỉ số các hàng (row) trong ma trận chứa chuỗi K. Sử dụng enumerate(), vòng lặp và append().
Mã nguồn
my_list = [["Pyt", "fun", "python"], ["python", "rock"], ["Pyt", "for", "CS"], ["Keep", "learning"]]
print("Ma trận:", my_list)
K = "Pyt"
my_result = []
for idx, element in enumerate(my_list):
if K in element:
my_result.append(idx)
print("Chỉ số hàng chứa 'Pyt':", my_result)
Kết quả
Ma trận: [['Pyt', 'fun', 'python'], ['python', 'rock'], ['Pyt', 'for', 'CS'], ['Keep', 'learning']] Chỉ số hàng chứa 'Pyt': [0, 2]
Giải thích
enumerate(my_list)cho (index, row).if K in elementkiểm tra K có trong listelement(row) không.- Hàng 0: ['Pyt', 'fun', 'python'] có 'Pyt' → thêm 0.
- Hàng 2: ['Pyt', 'for', 'CS'] có 'Pyt' → thêm 2.
- Hàng 1: 'python' ≠ 'Pyt' (case-sensitive).
Cách ngắn gọn
my_result = [i for i, row in enumerate(my_list) if K in row]
Phân biệt: K in row (tìm phần tử chính xác) vs any(K in cell for cell in row) (tìm substring).