Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python의 목록 목록에서 사용자 정의 곱하기

<시간/>

파이썬에서 두 개의 목록을 곱하는 것은 많은 데이터 분석 계산에서 필수적일 수 있습니다. 이 기사에서는 중첩 목록이라고도 하는 목록 목록의 요소를 다른 목록과 곱하는 방법을 살펴보겠습니다.

루프 사용

이 접근 방식에서 우리는 루프를 위한 견인을 설계합니다. 외부 루프는 목록의 요소 수를 추적하고 내부 루프는 중첩 목록 내부의 각 요소를 추적합니다. * 연산자를 사용하여 두 번째 목록의 요소를 중첩 목록의 각 요소와 곱합니다.

예시

listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]]

multipliers = [5, 11, 0]

# Original list
print("The given list: " ,listA)

# Multiplier list
print(" Multiplier list : " ,multipliers )

# using loops
res = [[] for idx in range(len(listA))]
   for i in range(len(listA)):
      for j in range(len(multipliers)):
         res[i] += [multipliers[i] * listA[i][j]]

#Result
print("Result of multiplication : ",res)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]]
Multiplier list : [5, 11, 0]
Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]]

열거 포함

enumerate 메소드를 사용하여 중첩 목록의 각 요소를 가져온 다음 for 루프를 사용하여 곱셈을 수행할 수 있습니다.

예시

listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]]

multipliers = [5, 11, 0]

# Original list
print("The given list: " + str(listA))

# Multiplier list
print(" Multiplier list : " ,multipliers )

# Using enumerate
res = [[multipliers[i] * j for j in x]
      for i, x in enumerate(listA)]

   #Result
print("Result of multiplication : ",res)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]]
Multiplier list : [5, 11, 0]
Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]]