[python] Pipenv를 사용하여 패키지 의존성 그래프 시각화하기

파이썬 개발을 하다보면 패키지 관리와 의존성 관리는 중요한 요소입니다. Pipenv는 패키지 관리 및 가상 환경 관리에 편리한 도구로서 널리 사용됩니다. 이번 글에서는 Pipenv를 사용하여 패키지 의존성 그래프를 시각화하는 방법에 대해 알아보겠습니다.

Pipenv란?

Pipenv는 Python의 패키지 관리 도구인 Pip와 가상 환경 관리 도구인 Virtualenv를 편리하게 사용할 수 있도록 해주는 종합적인 도구입니다. Pipenv는 Pipfile.lock 파일을 사용하여 정확한 패키지 버전과 의존성을 보장하며, 여러 프로젝트 간의 충돌을 방지합니다.

패키지 의존성 그래프 생성하기

Pipenv를 사용하여 패키지 의존성 그래프를 생성하기 위해서는 graph 명령어를 사용합니다. 해당 명령어를 실행하면 현재 프로젝트의 패키지 의존성에 대한 그래프를 생성하고 출력해줍니다.

$ pipenv graph

위 명령어를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

django==3.2.4
  - pytz [required: Any, installed: 2021.1]
    - DST Root CA X3 [required: >=0.0.0,<3, installed: 0.0.9]
  - sqlparse [required: >=0.2.2,<0.5, installed: 0.4.1]
    - click [required: >=2.0,<5, installed: 4.1.0]

이렇게 출력된 결과는 현재 프로젝트에서 사용되는 패키지들과 이들 패키지들 간의 의존성을 표시한 그래프입니다.

그래프 시각화 도구 사용하기

패키지 의존성 그래프를 시각화하기 위해 다양한 도구를 사용할 수 있습니다. 아래는 그래프 시각화 도구의 예시입니다.

이처럼 다양한 그래프 시각화 도구를 사용하여 Pipenv를 이용해 생성된 패키지 의존성 그래프를 시각화할 수 있습니다.

결론

Pipenv는 강력한 패키지 관리 및 가상 환경 관리 도구로서, 패키지 의존성 그래프를 생성하고 시각화하는 기능을 제공합니다. 이를 통해 개발자들은 프로젝트의 패키지 의존성을 보다 명확하게 파악할 수 있으며, 충돌이나 문제점을 예방할 수 있습니다. 그래프 시각화 도구들을 활용하여 패키지 의존성 그래프를 시각화하면 프로젝트의 구조를 더욱 명확하게 이해할 수 있습니다.

참고 자료