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

Python – Lọc hàng có cặp phần tử tổng bằng giá trị cho trước


Lọc các hàng trong ma trận chứa ít nhất một cặp phần tử có tổng bằng key.

Ví dụ

def find_sum_pair(val, key):
    for index in range(len(val)):
        for ix in range(index + 1, len(val)):
            if val[index] + val[ix] == key:
                return True
    return False

my_list = [[71, 5, 21, 6], [34, 21, 2, 71], [21, 2, 34, 5], [6, 9, 21, 42]]
print("Danh sách:", my_list)
my_key = 76
print("Key:", my_key)
my_result = [element for element in my_list if find_sum_pair(element, my_key)]
print("Kết quả:", my_result)

Kết quả

Danh sách: [[71, 5, 21, 6], [34, 21, 2, 71], [21, 2, 34, 5], [6, 9, 21, 42]]
Key: 76
Kết quả: [[71, 5, 21, 6]]

Giải thích

  • Hàm find_sum_pair kiểm tra mọi cặp phần tử khác nhau trong hàng.

  • List comprehension lọc các hàng mà hàm trả về True.