Python / PIP(Python Package Index) 사용법

Python Package Index

Python Package Index는 파이썬 패키지들이 모여 있는 저장소입니다. 2019년 3월 4일 현재 170,603개의 프로젝트, 1,236,475개의 릴리즈가 있습니다.

The Python Package Index (PyPI) is a repository of software for the Python programming language.

pip 명령어로 패키지를 로컬 머신에 설치하고 삭제하고 업데이트할 수 있습니다.

PIP

pip는 파이썬으로 작성된 패키지 소프트웨어를 관리하는 패키지 관리 시스템입니다. 파이썬 2.7.9 이후 버전과 파이썬 3.4 이후 버전은 pip를 기본적으로 포함하고 있습니다.

pip list

pip list 명령으로 현재 설치된 패키지 목록을 볼 수 있습니다. 업데이트가 필요한 패키지가 있는지도 알려줍니다.

C:\Users\JB>pip list
Package           Version
----------------- -------
astroid           2.2.1
colorama          0.4.1
isort             4.3.9
lazy-object-proxy 1.3.1
mccabe            0.6.1
pip               18.1
pylint            2.3.1
setuptools        40.6.2
six               1.12.0
typed-ast         1.3.1
typing            3.6.6
wrapt             1.11.1
You are using pip version 18.1, however version 19.0.3 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

pip show package-name

pip show 다음에 패키지 이름을 넣으면, 그 패키지 정보가 출력됩니다.

C:\Users\JB>pip show pip
Name: pip
Version: 18.1
Summary: The PyPA recommended tool for installing Python packages.
Home-page: https://pip.pypa.io/
Author: The pip developers
Author-email: pypa-dev@groups.google.com
License: MIT
Location: c:\users\jb\appdata\local\programs\python\python37-32\lib\site-packages
Requires:
Required-by:

pip install package-name

pip install 명령으로 패키지를 설치합니다.(flake8은 작성한 코드가 코드 작성 기준에 맞는지 검토하는 패키지입니다.)

C:\Users\JB>pip install flake8
Collecting flake8
  Downloading https://files.pythonhosted.org/packages/e9/76/b915bd28976068a9843bf836b789794aa4a8eb13338b23581005cd9177c0/flake8-3.7.7-py2.py3-none-any.whl (68kB)
    100% |████████████████████████████████| 71kB 849kB/s
Requirement already satisfied: mccabe<0.7.0,>=0.6.0 in c:\users\jb\appdata\roaming\python\python37\site-packages (from flake8) (0.6.1)
Collecting pycodestyle<2.6.0,>=2.5.0 (from flake8)
  Downloading https://files.pythonhosted.org/packages/0e/0c/04a353e104d2f324f8ee5f4b32012618c1c86dd79e52a433b64fceed511b/pycodestyle-2.5.0-py2.py3-none-any.whl (51kB)
    100% |████████████████████████████████| 51kB 1.3MB/s
Collecting pyflakes<2.2.0,>=2.1.0 (from flake8)
  Downloading https://files.pythonhosted.org/packages/84/f2/ed0ffb887f8138a8fe5a621b8c0bb9598bfb3989e029f6c6a85ee66628ee/pyflakes-2.1.1-py2.py3-none-any.whl (59kB)
    100% |████████████████████████████████| 61kB 1.4MB/s
Collecting entrypoints<0.4.0,>=0.3.0 (from flake8)
  Downloading https://files.pythonhosted.org/packages/ac/c6/44694103f8c221443ee6b0041f69e2740d89a25641e62fb4f2ee568f2f9c/entrypoints-0.3-py2.py3-none-any.whl
Installing collected packages: pycodestyle, pyflakes, entrypoints, flake8
Successfully installed entrypoints-0.3 flake8-3.7.7 pycodestyle-2.5.0 pyflakes-2.1.1

패키지를 업그레이드하고 싶다면 --upgrade 옵션을 붙입니다.

C:\Users\JB>pip install --upgrade flake8

pip uninstall package-name

pip uninstall 명령으로 패키지를 삭제합니다.

C:\Users\JB>pip uninstall flake8
Uninstalling flake8-3.7.7:
  Would remove:
    c:\users\jb\appdata\local\programs\python\python37-32\lib\site-packages\flake8-3.7.7.dist-info\*
    c:\users\jb\appdata\local\programs\python\python37-32\lib\site-packages\flake8\*
    c:\users\jb\appdata\local\programs\python\python37-32\scripts\flake8.exe
Proceed (y/n)? y
  Successfully uninstalled flake8-3.7.7

pip help

C:\Users\JB>pip help

Usage:
  pip <command> [options]

Commands:
  install                     Install packages.
  download                    Download packages.
  uninstall                   Uninstall packages.
  freeze                      Output installed packages in requirements format.
  list                        List installed packages.
  show                        Show information about installed packages.
  check                       Verify installed packages have compatible dependencies.
  config                      Manage local and global configuration.
  search                      Search PyPI for packages.
  wheel                       Build wheels from your requirements.
  hash                        Compute hashes of package archives.
  completion                  A helper command used for command completion.
  help                        Show help for commands.

General Options:
  -h, --help                  Show help.
  --isolated                  Run pip in an isolated mode, ignoring environment variables and user configuration.
  -v, --verbose               Give more output. Option is additive, and can be used up to 3 times.
  -V, --version               Show version and exit.
  -q, --quiet                 Give less output. Option is additive, and can be used up to 3 times (corresponding to
                              WARNING, ERROR, and CRITICAL logging levels).
  --log <path>                Path to a verbose appending log.
  --proxy <proxy>             Specify a proxy in the form [user:passwd@]proxy.server:port.
  --retries <retries>         Maximum number of retries each connection should attempt (default 5 times).
  --timeout <sec>             Set the socket timeout (default 15 seconds).
  --exists-action <action>    Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup,
                              (a)bort).
  --trusted-host <hostname>   Mark this host as trusted, even though it does not have valid or any HTTPS.
  --cert <path>               Path to alternate CA bundle.
  --client-cert <path>        Path to SSL client certificate, a single file containing the private key and the
                              certificate in PEM format.
  --cache-dir <dir>           Store the cache data in <dir>.
  --no-cache-dir              Disable the cache.
  --disable-pip-version-check
                              Don't periodically check PyPI to determine whether a new version of pip is available for
                              download. Implied with --no-index.
  --no-color                  Suppress colored output

Related Posts

Python / 자료형 / 리스트(list)

Python / 자료형 / 리스트(list)

리스트(list) 여러 개의 자료를 하나의 변수로 관리할 때 사용합니다. 리스트 만들기 리스트는 대괄호로 만듭니다. >>> jb = 빈 리스트를 만들 수 있습니다. >>> jb = 리스트 출력하기 print() 함수로 출력해봅니다. >>> jb = >>> print(jb) 리스트는 인덱스를 가집니다. 인덱스를 이용해서 특정 위치의 값을 출력할 수 있습니다. >>> print(jb) four >>> print(jb) 5 범위를 출력할 수 있습니다. >>> print(jb) >>> ...

Python / 반복문 / for

Python / 반복문 / for

for를 이용하여 반복된 작업을 할 수 있습니다. for는은 임의의 시퀀스(리스트나 문자열)의 항목들을 그 시퀀스에 들어있는 순서대로 이터레이션 합니다. range(4)는 0, 1, 2, 3을 만듭니다. 0일 때 한 번, 1일 때 한 번, 2일 때 한 번, 3일 때 한 번, 총 4회 반복을 합니다. >>> for i in range(4): print("Hello") Hello Hello Hello Hello range(4)로 만든 각 값을 ...

Python / 사용자 정의 함수 만들고 호출하기

Python / 사용자 정의 함수 만들고 호출하기

함수를 정의하고 호출하는 방법을 알아봅니다. 함수 만들기 def function_name( parameter ) : # code function_name : 함수 이름입니다. 변수명을 만드는 규칙과 같은 규칙으로 만듭니다. parameter : 인수입니다. 인수가 여러 개인 경우 쉼표(,)로 구분합니다. 함수 호출하기 function_name( parameter ) 예제 Hello를 출력하는 함수를 정의합니다. def jb_say_hello() : print('Hello') 함수를 호출하면 Hello가 출력됩니다. >>> jb_say_hello() Hello 함수를 정의하는 위치 함수는 ...

Python / input() / 사용자가 입력한 값을 변수에 저장하는 함수

Python / input() / 사용자가 입력한 값을 변수에 저장하는 함수

설명 input() 함수로 사용자가 어떤 값을 입력하게 하고, 그 값을 변수에 저장할 수 있습니다. 문법 예를 들어 >>> x = input() 을 입력하고 엔터를 누르면 사용자가 값을 입력하기를 기다립니다. 값을 입력하고 엔터를 누르면 그 값이 변수 x에 저장됩니다. >>> x = input() hello >>> x 'hello' 입력할 값에 대한 안내를 출력하고 싶다면 >>> x = input('some text') 와 같이 합니다. 작은 따옴표 ...

Python / 조건문 / if

Python / 조건문 / if

if if 구문을 이용하면, 특정 조건을 만족할 때 특정 작업이 수행되도록 할 수 있습니다. 조건을 만족하는 동안 반복 작업을 하고 싶다면 while을 사용하세요. 문법 1 조건이 참이라면 코드를 실행합니다. if condition: statement 1은 0보다 크므로 HM을 출력합니다. if 1 > 0: print("HM") 조건이 거짓이므로 HM을 출력하지 않습니다. 즉, 아무런 작업을 하지 ...

Python / range() / 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수

Python / range() / 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수

range() range() 함수는 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수입니다. for 반복문에 자주 사용됩니다. 문법 range(stop) 0부터 시작하여 stop보다 하나 작은 수까지 만듭니다. range(start, stop) start부터 시작하여 stop보다 하나 작은 수까지 만듭니다. range(start, stop, step) start부터 시작하여 stop보다 하나 작은 수까지 step 간격으로 수를 만듭니다. 예제 1 0부터 3까지의 수를 만듭니다. >>> list(range(4)) 1부터 10까지의 수를 만듭니다. >>> ...

Python / 자료형 / 사전(dict)

Python / 자료형 / 사전(dict)

사전(dict) 사전은 집합의 일종으로, 키와 값이 하나의 데이터를 만듭니다. 순서가 없고 중복된 데이터를 갖지 않아서, 중복 데이터를 만드는 +, *를 사용할 수 없지만, 키를 이용하여 인덱스기호()를 사용할 수 있습니다. 사전 만들기 사전은 집합과 마찬가지로 중괄호로 만듭니다. 키를 앞에, 값을 뒤에 쓰고, 구분은 콜론(:)으로 합니다. 데이터의 구분은 쉼표(,)로 합니다. >>> jb = {1:"one", 2:"two", 3:"three"} >>> jb {1: 'one', ...

Python / 객체(Object)와 변수(Variable)

Python / 객체(Object)와 변수(Variable)

객체(Object) 메모리에 저장된 자료를 객체(object)라고 합니다. 변수(Variable)와 변수명(Variable Name) 객체를 저장한 공간을 변수, 변수의 이름을 변수명이라고 합니다. 변수에 객체를 넣을 때 등호 '='을 이용합니다. 등호 왼쪽에는 변수명, 등호 오른쪽에는 객체를 적습니다. 예를 들어 x = 100 이라 하면 객체 100을 x라는 이름의 변수에 저장하겠다는 뜻입니다. 객체는 보통 변수에 저장하여 사용합니다. 객체 출력 객체를 출력하는 대표적인 함수는 print입니다. >>> ...

Python / Visual Studio Code 개발 환경 만들기

Python / Visual Studio Code 개발 환경 만들기

파이썬 개발을 위한 도구는 여러 가지가 있습니다. Visual Studio Code도 그 중 하나입니다. VS Code에 Python 확장 기능을 설치하고, Hello World를 출력해보겠습니다. 확장 기능 설치 Visual Studio Code를 설치하고 실행합니다. 사각형 모양의 확장 기능 아이콘을 클릭합니다. python으로 검색한 후, 다운로드 수가 가장 많은 Microsoft가 만든 Python을 설치합니다. Reload Required를 클릭합니다.(VS Code 버전에 따라 나오지 않을 ...

Python / Package / flake8 - PEP(Python Enhance Proposal) 검증 패키지 사용법

Python / Package / flake8 - PEP(Python Enhance Proposal) 검증 패키지 사용법

Style Guide for Python Code 여러 명이 공동으로 파이썬 코딩을 할 때, 각자의 스타일이 다르면 문제가 생길 수 있습니다. 그래서 협업을 수월하게 할 수 있도록 몇 가지 규칙을 정놓았는데, 이를 PEP(Python Enhance Proposal)라고 합니다. 몇 가지 규칙을 나열해보면... Use 4 spaces per indentation level. : 들여쓰기는 4칸의 공백 Limit all lines to a ...