Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python – 리스트의 교차 패턴 쌍 계산하기

리스트에서 교차 패턴 쌍(cross pattern pairs)을 구해야 할 때는 리스트 컴프리헨션(list comprehension)'*' 연산자를 활용하면 간단하게 해결할 수 있습니다. 이 방법은 두 리스트의 모든 요소 조합에 대해 곱셈을 수행하여 새로운 리스트를 생성합니다.


예제 코드

my_list_1 = [14, 35, 26]
my_list_2 = [36, 24, 12]

print("첫 번째 리스트는 :")
print(my_list_1)
print("두 번째 리스트는 :")
print(my_list_2)

result = [i * j for j in my_list_1 for i in my_list_2]

print("결과는 :")
print(result)

실행 결과

첫 번째 리스트는 :
[14, 35, 26]
두 번째 리스트는 :
[36, 24, 12]
결과는 :
[504, 336, 168, 1260, 840, 420, 936, 624, 312]

코드 설명

  • 먼저 두 개의 리스트를 정의하고, 콘솔에 출력하여 확인합니다.

  • 리스트 컴프리헨션을 사용해 두 리스트를 반복하면서, 각 요소들의 곱을 순서대로 계산합니다. 외부 루프는 my_list_1, 내부 루프는 my_list_2를 순회하므로 총 3 × 3 = 9개의 조합이 만들어집니다.

  • 계산된 결과 값들은 하나의 새로운 리스트로 묶여 변수 result에 저장됩니다.

  • 마지막으로 결과 리스트를 콘솔에 출력합니다.


참고 사항

이 기법은 데카르트 곱(Cartesian product)과 유사한 방식으로 동작하며, 두 리스트 간의 모든 요소 조합을 처리할 때 유용합니다. 만약 더 복잡한 조합 연산이 필요하다면 파이썬 표준 라이브러리의 itertools.product를 함께 사용하는 것도 좋은 대안입니다.