Python 패키지 사용 살펴보기
Python 패키지를 사용하면 대규모 시스템을 분할하고 모듈을 일관된 방식으로 구성하여 자신과 다른 사람이 효율적으로 사용하고 재사용할 수 있습니다. Python의 "배터리 내장"이라는 모토는 표준 라이브러리에 많은 유용한 패키지가 사전 설치되어 제공된다는 의미입니다.
그러나 다양한 놀라운 타사 소프트웨어 패키지를 활용할 수도 있습니다. 이 튜토리얼에서는 패키지가 정확히 무엇인지, 패키지에서 모듈을 가져오는 방법, Python 표준 라이브러리에 내장된 패키지를 탐색하고 타사 패키지를 설치하는 방법에 대해 알아야 할 모든 것을 배웁니다.
가방이란 무엇인가요?
패키지에 대해 이야기하기 전에 먼저 모듈에 대해 이야기해보겠습니다. 모듈은 귀하(및 다른 사람들)가 프로그램을 구성하는 함수와 클래스를 배치하는 *.py
확장자를 가진 소스 파일입니다.
Python의 패키지는 여러 Python 파일을 포함하는 폴더일 뿐이며, 비어 있거나 실행 가능한 코드를 포함할 수 있는 하나의 __init__.py
文件。 __init__.py
文件表明该目录是一个包。 __init__.py
파일이 있어야 합니다.
패키지는 Python의 계층적 네임스페이스 개념을 구현한 것입니다. Zen of Python 인용:
"네임스페이스는 좋은 아이디어입니다. 더 많이 활용해 보겠습니다!"전체 Python Zen을 보려면 Python 대화형 세션에서
를 입력하세요. import this
으아아아
패키지는 하위 패키지와 모듈(파일)의 계층 구조를 나타내지만 계층 구조는 패키지와 하위 패키지가 디렉터리와 하위 디렉터리인 파일 시스템을 기반으로 할 필요는 없습니다. 그것보다 훨씬 더 유연합니다.
Python 패키지 만들기
간단한 예부터 시작해 보겠습니다. 아래에는 두 개의 Python 모듈이 포함된
라는 패키지가 있습니다. simple_package
으아아아
- __init__.py: 패키지임을 나타냅니다
- tasks.py 및 views.py 는 모듈입니다.
ansible이라는 패키지를 살펴보겠습니다. 표준 라이브러리의 패키지가 아닙니다. 나중에 타사 패키지를 찾아 설치하는 방법을 살펴보겠습니다. 이제 디렉터리 파일 구조를 살펴보겠습니다.
이러한 패키지는 일반적으로 Python 인터프리터의 사이트 패키지 디렉터리(버전, 운영 체제 및 배포판에 따라 다름) lib 아래에 설치됩니다.
예를 들어 Mac에서 Python 3.10은 /lib/python3.10/site-packages
ansible/utils 디렉토리를 보면 여기에 다른 모듈과 하위 패키지도 포함되어 있음을 알 수 있습니다. 으아아아
검색 경로모듈을 가져오면 Python은 검색을 시작할 디렉터리 목록인 검색 경로를 기반으로 검색 알고리즘을 수행합니다. 검색 경로는
를 통해 사용할 수 있는 디렉터리 목록이며 이를 동적으로 조작할 수 있습니다(검색 경로의 항목 추가, 삭제 또는 이동). site-packages 디렉터리는 항상 존재합니다. sys.path
에서 path.py 모듈을 가져오려면 다음 명령을 사용해야 합니다. 으아아아
모듈을 가져오려면 다음 명령을 사용하세요:
으아아아
path
和 encrypt
표준 os.path 모듈도 사용하려면 다음 명령을 사용하세요.
이제 속한 네임스페이스로 인해 충돌하지 않고 경로 모듈 중 하나 또는 둘 다를 사용할 수 있습니다.
표준 라이브러리 탐색
표준 라이브러리에는 많은 패키지가 있습니다. 작업을 완료해야 하지만 방법을 잘 모를 때마다 탐색해 볼 가치가 있습니다. 수학, 셸 통합, 운영 체제 통합, 문자열 조작, 네트워킹 및 일반적인 파일 형식과 같은 일반적인 작업의 경우 표준 라이브러리에는 잘 설계되고 성능이 뛰어나며 잘 테스트된 패키지가 있을 가능성이 높습니다.
표준 라이브러리에 들어가는 것은 큰 일이기 때문에 표준 라이브러리 패키지를 정말 신뢰할 수 있습니다. 이 패키지는 핵심 Python 개발자가 설계했거나 표준 라이브러리로 만들기 전에 제3자 라이브러리로 현장에서 철저히 조사되고 많이 사용되었습니다.다음은 주제별로 정리된 표준 라이브러리의 모든 패키지입니다.
PyPI
표준 라이브러리는 훌륭하지만 표준이 아닌 필요한 특수 기능이 있는 경우가 많습니다. 그렇다고 처음부터 작성해야 한다는 의미는 아닙니다. Python에는 많은 양의 코드를 무료로 개발하고 공유하는 활기차고 활동적인 커뮤니티가 있습니다. PyPI: Python 패키지 색인을 입력하세요. PyPI는 공개적으로 사용 가능한 모든 소프트웨어 패키지를 호스팅하고 이를 검색할 수 있는 원스톱 상점을 제공합니다.
浏览 PyPI
PyPI 将包组织在可浏览的索引中。您可以按主题、环境、框架、开发、状态、目标受众、许可证、自然语言、编程语言(是的,有支持多种编程语言的 Python 包)和操作系统来浏览和搜索。
截至 2021 年,PyPI 不再显示软件包的下载统计信息,因为维护统计信息所需的资源导致其效率低下。
安装软件包
有两种方法可以从 PyPI 安装软件包。您可以下载该软件包,然后运行 python setup.py install
。但现代的方法是使用 pip、setuptools 和wheel。
从 Python 3.4 和 Python 2.79 开始默认包含 Pip 和 setuptools,但您需要升级到最新版本:
- Linux/macOS:
pip install -U pip setuptools
- Windows:
python -m pip install -U pip setuptools
使用pip安装wheel:
pip install wheel.
要使用 pip 安装软件包,请发出此命令。
pip install <package_name>
其中 package_name
是包的名称。例如,要安装 Ansible,命令如下所示:
pip install ansible
如果需要特定版本,也可以指定如下:
pip install ansible==7.0
Python 包始终安装到环境中。我在这里不会介绍的一种常见做法是使用虚拟环境来管理具有不同解释器和/或不同安装包集的多个独立的 Python 安装。您可以在此处阅读有关虚拟环境的更多信息。
最佳实践
Python 打包权威提供了大量有关打包最佳实践的指导。这很重要,因为这是一个正在积极开发的领域,并且建议会快速发展。
此外,如果您想做一些特别的事情,例如从替代存储库而不是 PyPI 安装软件包或以更复杂的方式使用 pip,您会发现精彩的讨论和实用的建议。
结论
当您是 Python 初学者时,您会学习核心语言并享受使用它的乐趣。很快您就会发现标准库,并且随着您获得更多经验,您会从它的丰富性中受益越来越多。
作为 Pythonista,您发展的下一阶段是将 Python 社区在 PyPI 上带来的巨大优势融入到您的系统中。包作为可重用 Python 代码的部署单元使这个生态系统得以实现。
위 내용은 Python 패키지 사용 살펴보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









이 기사에서는 HTML을 구문 분석하기 위해 파이썬 라이브러리 인 아름다운 수프를 사용하는 방법을 설명합니다. 데이터 추출, 다양한 HTML 구조 및 오류 처리 및 대안 (SEL과 같은 Find (), find_all (), select () 및 get_text ()와 같은 일반적인 방법을 자세히 설명합니다.

Linux 터미널에서 Python 버전을 보려고 할 때 Linux 터미널에서 Python 버전을 볼 때 권한 문제에 대한 솔루션 ... Python을 입력하십시오 ...

파이썬 객체의 직렬화 및 사막화는 사소한 프로그램의 주요 측면입니다. 무언가를 Python 파일에 저장하면 구성 파일을 읽거나 HTTP 요청에 응답하는 경우 객체 직렬화 및 사태화를 수행합니다. 어떤 의미에서, 직렬화와 사제화는 세계에서 가장 지루한 것들입니다. 이 모든 형식과 프로토콜에 대해 누가 걱정합니까? 일부 파이썬 객체를 지속하거나 스트리밍하여 나중에 완전히 검색하려고합니다. 이것은 세상을 개념적 차원에서 볼 수있는 좋은 방법입니다. 그러나 실제 수준에서 선택한 직렬화 체계, 형식 또는 프로토콜은 속도, 보안, 유지 보수 상태 및 프로그램의 기타 측면을 결정할 수 있습니다.

Python의 통계 모듈은 강력한 데이터 통계 분석 기능을 제공하여 생물 통계 및 비즈니스 분석과 같은 데이터의 전반적인 특성을 빠르게 이해할 수 있도록 도와줍니다. 데이터 포인트를 하나씩 보는 대신 평균 또는 분산과 같은 통계를보고 무시할 수있는 원래 데이터에서 트렌드와 기능을 발견하고 대형 데이터 세트를보다 쉽고 효과적으로 비교하십시오. 이 튜토리얼은 평균을 계산하고 데이터 세트의 분산 정도를 측정하는 방법을 설명합니다. 달리 명시되지 않는 한,이 모듈의 모든 함수는 단순히 평균을 합산하는 대신 평균 () 함수의 계산을 지원합니다. 부동 소수점 번호도 사용할 수 있습니다. 무작위로 가져옵니다 수입 통계 Fracti에서

이 기사는 딥 러닝을 위해 텐서 플로와 Pytorch를 비교합니다. 데이터 준비, 모델 구축, 교육, 평가 및 배포와 관련된 단계에 대해 자세히 설명합니다. 프레임 워크, 특히 계산 포도와 관련하여 주요 차이점

이 튜토리얼은 간단한 나무 탐색을 넘어서 DOM 조작에 중점을 둔 아름다운 수프에 대한 이전 소개를 바탕으로합니다. HTML 구조를 수정하기위한 효율적인 검색 방법과 기술을 탐색하겠습니다. 일반적인 DOM 검색 방법 중 하나는 EX입니다

이 기사는 Numpy, Pandas, Matplotlib, Scikit-Learn, Tensorflow, Django, Flask 및 요청과 같은 인기있는 Python 라이브러리에 대해 설명하고 과학 컴퓨팅, 데이터 분석, 시각화, 기계 학습, 웹 개발 및 H에서의 사용에 대해 자세히 설명합니다.

이 기사는 Python 개발자가 CLIS (Command-Line Interfaces) 구축을 안내합니다. Typer, Click 및 Argparse와 같은 라이브러리를 사용하여 입력/출력 처리를 강조하고 CLI 유용성을 향상시키기 위해 사용자 친화적 인 디자인 패턴을 홍보하는 세부 정보.
