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

Python – Tất cả tổ hợp thay thế (replacement combination) từ list khác

Giới thiệu

Để tạo tất cả các tổ hợp có độ dài bằng list gốc, lấy từ phép hợp của list gốc và list thay thế, ta dùng itertools.combinations.

Ví dụ minh họa

from itertools import combinations

my_list = [54, 98, 11]
print("Danh sách gốc:")
print(my_list)

replace_list = [8, 10]
my_result = list(combinations(my_list + replace_list, len(my_list)))
print("Tất cả tổ hợp độ dài 3 từ (gốc + thay thế):")
print(my_result)

Kết quả đầu ra

Danh sách gốc:
[54, 98, 11]
Tất cả tổ hợp độ dài 3 từ (gốc + thay thế):
[(54, 98, 11), (54, 98, 8), (54, 98, 10), (54, 11, 8), (54, 11, 10), (54, 8, 10), (98, 11, 8), (98, 11, 10), (98, 8, 10), (11, 8, 10)]

Giải thích

  • my_list + replace_list nối hai list.
  • combinations(..., len(my_list)) tạo tổ hợp độ dài bằng list gốc.
  • Kết quả bao gồm tổ hợp toàn bộ từ list gốc, và các tổ hợp có 1 hoặc 2 phần tử từ replace_list.