Community

파이썬 어디까지 리스트 인프리헨션을 적용까요?

안녕하세요. 파이썬을 사용하다 문득 궁금하여 질문을 남겨 봅니다. 파이썬을 사용하다 보면 단순 반복문을 사용할 때 보다 리스트 인프리헨션을 활용하거나, map함수를 사용할 때 처리 속도가 훨씬 빠르단 것을 알 수 있습니다. 이 때, 반복문의 중첩 수가 늘어 날수록 단순 중첩 반복문이 압도적으로 처리 속도가 느리게 나오는 경우가 있고, 이를 위해 조금 가독성이 떨어지지만 map이나 인프리헨션을 사용하곤 합니다. 제가 궁금한 것을 반복문의 처리 속도가 크게 차이가 없을 것 같은 적은 반복의 경우에도 인프리헨션을 사용하는 것이 좋을까요? 아니면 단순 반복문을 사용하여 가독성을 높이는 것이 좋을까요? 다음 예시는 SOP의 Minterm을 찾는 알고리즘 입니다. 총 반복 수는 16회 밖에 되지 않지만, 인프리헨션을 사용했을 때 가독성이 조금 떨어지는 것 같습니다. R, C = 4, 4 # (1) 인프리헨션 minterms = [format(i, '02b') + format(j, '02b') for i in range(R) for j in range(C) if map[i][j] == 1] # (2) 단순 반복문 for i in range(R): for j in range(C): if map[i][j] == 1: minterm = format(i, '02b') + format(j, '02b') minterms.append(minterm) 이런 경우에도 인프리헨션을 활용하는 것이 맞을까요?

Loading...

알림

알림이 없습니다