English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Python 기본 튜토리얼

Python 흐름 제어

Python 함수

Python 데이터 타입

Python 파일操作

Python 객체와 클래스

Python 날짜와 시간

Python 고급 지식

Python 참조 매뉴얼

파이썬 pip

이 튜토리얼에서는 pip을 사용하여 Python 소프트웨어 패키지를 설치하고 관리하는 방법을 배울 것입니다.

pip이 무엇인가요?

pip은 Python의 표준 소프트웨어 패키지 관리자입니다. pip을 사용하여 Python 표준 라이브러리에 없는 다른 소프트웨어 패키지를 설치할 수 있습니다. 예를 들어,

pip install numpy

우리가 시스템에 pip을 설치했다면, 이 명령은 numpy 라이브러리를 설치합니다.

pip을 어떻게 설치하나요?

pip은 Python에 사전 설치되었습니다. 3.4또는 더 이전 버전에서. 명령 프롬프트에서 다음 명령을 사용하여 pip이 설치되었는지 확인할 수 있습니다:

pip --version

pip 시스템에 이미 존재하면, pip은 해당 버전을 표시합니다. 예를 들어:

pip 19.3.1 from C:\Python37\lib\site-packages\pip (python 3.7)

Python의 오래된 버전이나 pip이 다른 이유로 설치되지 않았다면, 이 링크에서 설명된 단계를 따라 진행하십시오:pip 설치

pip 설치

pip 사용

pip은 명령행 프로그램입니다. 설치 후 pip을 명령 프롬프트와 함께 사용할 수 있습니다.

pip의 기본 문법은:

pip <pip arguments>

pip을 사용하여 패키지 설치

표준 Python 라이브러리 이외에도, Python 커뮤니티는 다양한 개발 프레임워크, 도구 및 라이브러리에 맞춘 많은 패키지를 제공합니다.이러한 패키지의 대부분은 공식적으로 호스팅되고 배포됩니다Python 패키지 인덱스(PyPI)에서

。pip은 이러한 패키지를 다운로드하고 설치할 수 있게 합니다.

기본 패키지 설치

install 명령어는 pip을 사용하여 패키지를 설치하는 데 사용됩니다. 예를 들어:

requests를 설치하려면, 인기 있는 Python HTTP 라이브러리입니다. 다음 명령어의 도움으로 작업할 수 있습니다.

출력 결과

pip install requests
  Using cached https://files.pythonhosted.org/packages/51/Collecting requests/23c926cd341ea6b7bd2dd0b99a00aba828ae0f89d72b2190f27c11d4b7be/requests-2.22.0-py2.py3-none-any.whl
fb3.1Collecting chardet<3.0.2
  Using cached https://files.pythonhosted.org/packages/bc/a9/01.0,>=562e4274b6487b4ffebfb1bb7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
ddec3Collecting urllib1.25!=1.25.1.0,!=1.26,>=1.21.1
  Using cached https://files.pythonhosted.org/packages/b4/40/a9837291310,<1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl
Collecting idna<2.9,>=2.5
  Using cached https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl
Collecting certifi>=2017.4.17
  Downloading https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl (156kB)
Installing collected packages: chardet, urllib3, idna, certifi, requests
Successfully installed certifi-2019.11.28 chardet-3.0.4 idna-2.8 requests-2.22.0 urllib3-1.25.7

여기서 install 명령어가 pip과 함께 사용되고, 설치하려는 소프트웨어 패키지의 이름(requests)가 뒤따릅니다.

pip은 이 소프트웨어 패키지가 필요로 하는 모든 다른 의존성을 설치합니다. 예를 들어 chardet, urllib3그리고 certifi.

소프트웨어 패키지 버전을 지정합니다

pip install의 최소형태로 사용하면 pip이 소프트웨어 패키지의 최신 버전을 다운로드합니다.

때로는 특정 버전만 다른 프로그램과 호환됩니다. 따라서 소프트웨어 패키지의 버전을 다음과 같은 방법으로 정의할 수 있습니다:

pip install requests==2.21.0

이제는 requests 라이브러리를 설치했습니다.2.21.0 버전.

pip으로 설치된 패키지 나열

pip list 명령어는 현재 Python 환경에서 사용할 수 있는 모든 패키지를 나열할 수 있습니다.

pip list

출력 결과

Package    Version
---------- ----------
certifi    2019.11.28
chardet    3.0.4
idna       2.8
pip        19.3.1
requests   2.22.0
setuptools 45.0.0
urllib3    1.25.7
wheel      0.33.6

pip show 패키지 정보 보여주기

pip show 명령어는 하나나 여러 개의 설치된 소프트웨어 패키지에 대한 정보를 보여줍니다. 예를 들어:

pip show requests

출력 결과

Name: requests
Version: 2.22.0
Summary: Python HTTP for Humans.
Home-page: http://python-requests.org
Author: Kenneth Reitz
Author-email: [email protected]
License: Apache 2.0
Location: c:\users\dell\desktop\venv\lib\site-packages
Requires: certifi, chardet, urllib3, idna
Required-by:

여기서 show 명령어는 requests 라이브러리에 대한 정보를 보여줍니다. 위의 출력에서 주의하세요:RequiresRequired-by열.

Requires 열은 requests 라이브러리가 필요한 의존성을 보여줍니다. 그리고 Required-by로 필요한 requests 패키지를 보여줍니다.

pip으로 패키지 제거

pip과 pip uninstall 명령어를 통해 패키지를 제거할 수 있습니다.

현재 Python 환경에서 해당 라이브러리를 제거하려면 requests를 사용할 수 있습니다. 다음과 같은 방법으로 이를 수행할 수 있습니다:

pip uninstall requests

출력 결과

Uninstalling requests-2.22.0:
  Would remove:
    C:\Python37\lib\site-packages\requests-2.22.0.dist-info\*
    C:\Python37\lib\site-packages\requests\*
Proceed (y/n)? y
  Successfully uninstalled requests-2.22.0

보이는 것처럼, requests 패키지가 최종 경고 후에 제거되었습니다.

注意주의3:지정된 패키지를 제거했더라도 의존성으로 설치된 패키지는 제거되지 않습니다. 이 경우 requests 라이브러리의 의존성(chardet、urllib

그리고 certifi)는 제거되지 않습니다。

프로그램 패키지의 의존성을 제거하려면 pip show 명령어를 사용하여 설치된 패키지를 확인하고 수동으로 제거할 수 있습니다。

요구 파일을 사용하여

모든 패키지 이름을 포함한 파일은 Python 패키지를 배치 설치에도 사용할 수 있습니다。

다음과 같은 파일이 있습니다requirements.txt،그 중에는 다음과 같은 항목이 포함됩니다:

numpy
Pillow
pygame

모든 이 패키지 및 의존성을 설치할 수 있는 pip 명령어를 사용할 수 있습니다。

pip install -r requirements.txt

출력 결과

Collecting numpy
  Using cached https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whl
Collecting Pillow
  Using cached https://files.pythonhosted.org/packages/88/6b/66f502b5ea615f69433ae1e23ec786b2cdadbe41a5cfb1e1fabb4f9c6ce9/Pillow-7.0.0-cp37-cp37m-win_amd64.whl
Collecting pygame
  Using cached https://files.pythonhosted.org/packages/ed/56/b63ab3724acff69f4080e54c4bc5f55d1fbdeeb19b92b70acf45e88a5908/pygame-1.9.6-cp37-cp37m-win_amd64.whl
Installing collected packages: numpy, Pillow, pygame
Successfully installed Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6

여기서는 pip에 같은 install 명령어를 사용합니다。

하지만 추가 매개변수-r은 pip이 패키지 이름 대신 요구 파일을 전달하고 있다는 것을 지정합니다。

요구 파일 생성

요구 파일을 수동으로 생성하는 대신 pip는 freeze 명령어를 제공합니다. 이 명령어를 어떻게 사용할 수 있는지 보겠습니다。

현재 Python 환경이 다음과 같은 패키지를 가지고 있다고 가정해 보겠습니다. pip list를 사용하여 표시할 수 있습니다。

Package    Version
---------- -------
numpy      1.17.0
Pillow     6.1.0
pip        19.3.1
pygame     1.9.6
setuptools 45.0.0
wheel      0.33.6

freeze 명령어를 사용하여 Python이 미 пред설치한 소프트웨어 패키지를 목록으로 나열합니다。

pip freeze

출력 결과

numpy==1.17.0
Pillow==6.1.0
pygame==1.9.6

pip freeze 명령어는 요구 파일 형식으로 소프트웨어 패키지 및 버전을 표시합니다。

따라서 다음 명령어를 사용하여 출력을 리디렉션하여 요구 파일을 생성할 수 있습니다:

pip freeze > requirements.txt

작업 디렉토리에서 새로운requirements.txt파일. 이후 다른 파이썬 환경에서 특정 버전의 패키지를 설치하기 위해 사용할 수 있습니다.

search 명령어는 명령 프롬프트에서 패키지를 검색하는 데 사용됩니다. 예제를 보겠습니다:

pip search pygame

출력 결과

pygame-anisprite (1.0.0)               - PyGame를 위한 애니메이션 스프라이트!
pygame-ai (0.1.2)                      - PyGame를 위한 비디오 게임 인공지능 패키지
pygame-engine (0.0.6)                  - 간단한 pygame 게임 엔진
pygame-assets (0.1)                    - Pygame 애플리케이션을 위한 자산 관리자
pygame-gui (0.4.2)                     - pygame를 위한 GUI 모듈 2
pygame-spritesheet (0.2.0)             - pygame 확장 모듈, SpriteSheet 클래스를 제공
pygame-minesweeper (1.0)               - pygame를 사용하여 구현된 미네소트 게임
pygame-menu (2.1.0)                    - pygame를 위한 간단하고 가벼운 사용하기 쉬운 메뉴
pygame-plot (0.1)                      - 데이터의 빠른 시각화를 위해 pygame와 matplotlib 스타일을 사용
pygame (1.9.6)                         - 파이썬 게임 개발
...

여기서 우리는 pygame라는 이름의 라이브러리를 검색했습니다. 키워드와 일치하는 모든 다른 소프트웨어 패키지를 표시합니다. 이 명령어는 관련 소프트웨어 패키지를 찾는 데 도움이 됩니다.

pip에 대한更多信息를 더 알고 싶다면 방문하십시오:파이썬 pip(공식 문서)