파 이 썬 생태 [부분 번역]
PHP, Ruby 의 다른 언어 에서 전 환 된 웹 개발 자 에 게 적합 합 니 다. 파 이 썬 생태 환경 을 알 아 보 는 데 사용 합 니 다.
더 많은 참고http://ikraftsoft.com/
독자 대상
파 이 썬 프로 그래 밍 이 아니 라 파 이 썬 자 체 를 더 깊이 이해 하 게 해 줍 니 다.파 이 썬 을 모 르 는 독자 에 게 는 적합 하지 않다.Lear Python the hard way 와 같은 Python 에 관 한 책 을 보 내 는 것 이 좋 습 니 다.
환경 이 Linux (ubuntu 또는 Debian) 나 클래스 Linux 환경 을 사용한다 고 가정 합 니 다.저 자 는 윈 과 맥 OS X 환경 에 익숙 하지 않 으 며, 크로스 브 라 우 저 개발 과 는 다르다.
Python 설치 에 대한 튜 토리 얼:
질문
Python 2. x 는 현재 광범 위 하 게 사용 되 고 있 으 며 3. x 버 전 은 내일 의 별 입 니 다.
Python 3 과 2 는 다 릅 니 다. 2.6 과 2.7 은 현재 유행 하 는 버 전 입 니 다. 대부분의 유행 하 는 가방 / 프레임 / 도구 / 세트 / 모듈 은 Python 3 을 100% 호 환 하지 못 합 니 다.
그래서 안전 을 지 키 는 방법 은 Python 2. x (구체 적 으로 는 2.7. x) 를 선택 하 는 것 이다.
Python 3 치욕 벽 은 다양한 가방 의 호 환 상황 을 묘사 하고 있 으 며, 3 을 선택 하면 먼저 찾 아 보 는 것 을 권장 합 니 다.
Python 가상 컴퓨터 선택
CPython 은 현재 가장 많이 설 치 된 버 전 이자 다른 가상 컴퓨터 의 참고 입 니 다.
PyPy 는 Python 이 썼 고 Jython 은 자바 가 썼 으 며 자바 VM 플랫폼 에서 실 행 됐 으 며 IronPyton 은 Microsoft. NET CLR 플랫폼 을 위해 썼 다.
필요 하지 않 으 면 CPython 은 두 가지 선택 이다.
어떻게 선택해 야 할 지 모 르 겠 으 면 2.7. x 의 CPython 을 사용 하 세 요.
Python 설치
대부분의 Linux / Unix 플랫폼 은 Python 을 미리 설치 한 것 입 니 다.
이거 안 뒤 집어...
이해 가방
파 이 썬 에 대해 이해 해 야 할 것 은 파 이 썬 은 패키지 관리 도구 가 없다 는 것 이다. 사실상 패키지 의 개념 은 파 이 썬 에서 매우 비슷 하 다.
Python 은 모듈 로 코드 를 관리 합 니 다.하나의 모듈 은 하나의 단독 파일 로 하나의 기능 만 포함 하거나 하나의 디 렉 터 리 가 하나 이상 의 키 모듈 을 포함 할 수 있 습 니 다.가방 과 모듈 의 차 이 는 매우 작 아서 모든 모듈 은 하나의 가방 으로 볼 수 있다.
가방 과 모듈 의 차 이 는 무엇 입 니까?파 이 썬 이 모듈 을 어떻게 찾 았 는 지 이해 해 보 세 요.
모든 프로 그래 밍 환경 에서 일부 기능 과 클래스
str
, len
, Exception
, etc.) 는 전역 (즉 내 장 된 것) 이 고 다른 것 은 import
문 구 를 가 져 와 서 사용 해 야 합 니 다.import os
from os.path import basename,dirname
이 가방 들 은 import 를 찾 을 수 있 도록 파일 시스템 의 다른 곳 에 있어 야 합 니 다.Python 은 이 파일 들 을 어떻게 찾 습 니까?사실 Python 가상 컴퓨터 를 설치 할 때 이 위치 들 은 이미 설정 되 어 있 는데 이런 설정 들 은 시스템 의 플랫폼 에 따라 다 를 것 이다.
이 가방 의 위 치 는 sys. path 를 통 해 볼 수 있 습 니 다.
import sys
print sys.path
파 이 썬 기본 검색 패키지 의 디 렉 터 리 를 보 여 줍 니 다. 첫 번 째 부터 검색 을 시작 합 니 다. 가방 을 찾 을 때 까지 두 디 렉 터 리 에 같은 가방 이름 의 가방 이 포함 되 어 있 으 면 파 이 썬 은 첫 번 째 로 검색 한 가방 을 우선 선택 합 니 다.
따라서 Python 에서 우선 선택 한 가방 을 변경 하려 면 사용 할 수 있 습 니 다.
sys.path.insert(0,'/path/to/my/packages')
그것 은 여러 장면 에 적용 되 지만 남용 되 기 쉽다 는 것 을 기억 해 야 한다.그래서 만부득이 하지 않 으 면 그것 을 쓰 지 않 는 다.
site
모듈 은 Python 검색 패 키 지 를 제어 하 는 방법 입 니 다.그것 은 Python 가상 컴퓨터 가 초기 화 되 었 을 때 인용 되 었 다.더 많은 세부 사항 은 그것 의 공식 적 인 안정 을 참고 한다.PYTHONPATH
PYTHONPATH 는 패키지 의 검색 경 로 를 설정 하 는 환경 변수 로 Python 의 PATH 변수 로 볼 수 있 습 니 다.이것 은
:
분 단 된 Python 모듈 경로 목록 (sys. path 목록 과 같 지 않 음) 으로 볼 수 있 습 니 다. 설정 방식:export PYTHONPATH=/path/to/some/directory:/path/to/another/directory:/path/to/yet/another/directory
일부 환경 에서 존재 하 는 PYTHONPATH 값 을 덮어 쓰 지 않 으 려 면 추가 하거나 미리 추가 하면 됩 니 다.
export PYTHONPATH=$PYTHONPATH:/path/to/some/directory # Append
export PYTHONPATH=/path/to/some/directory:$PYTHONPATH #Prepend
이 명령 은. bashrc 를 넣 고 살 면 됩 니 다. zshrc 를 넣 으 면 됩 니 다.
PYTHONPATH, sys. path. insert 는 비슷 하고 쉽게 수정 할 수 있 지만 고치 지 않 는 것 이 좋 습 니 다.네가 일단 현지에서 바 뀌 었 기 때문에, 아마도 온라인 환경 을 수정 하지 않 았 을 것 이다.️ 다른 방식, 본 고 는 잠시 후에 나타 납 니 다.
이제 Python 이 설 치 된 가방 을 어떻게 찾 는 지 이해 하 셨 습 니 다. 그러면 우리 의 문 제 를 돌 이 켜 보 겠 습 니 다.가방 과 모듈 은 어떤 차이 가 있 습 니까?가방 은 모듈 이나 모듈 집합 으로 보통 tar 가방 에 압축 되 는데 이 tar 가방 에는 의존 관계 가 포함 되 어 있 습 니 다.표준 패키지 경로 로 파일 복사 하기;설치 하기 전에 컴 파일 할 코드 와 같은 컴 파일 설명.
제3자 가방
각종 임무 에 대해 서 는 제3자 가방 을 설치 해 야 할 가능성 이 높다.
리 눅 스 시스템 에 제3자 패 키 지 를 설치 하 는 데 는 세 가지 방법 이 있다.
두 번 째 와 세 번 째 방식 은 운영 체제 플랫폼 과 무관 하 므 로 StackOverflow 사이트 에서 귀하 의 플랫폼 을 바탕 으로 하 는 제3자 패키지 의 설치 방법 을 검색 할 수 있 습 니 다.
제3자 모듈 을 어디서 찾 습 니까?
simplejson (JSon 문법 분석 도구), 예 를 들 어 Ubuntu 에서:
$ sudo apt-get install python-simplejson
pip 설치
easy_인 스타 그램 이 총 애 를 잃 었 기 때문에 pip 를 사용 합 니 다.
pip 는 Python 패키지 관리 도구 입 니 다.pip 는 Python 가상 컴퓨터 가 설치 되 지 않 았 기 때문에 추가 설치 가 필요 합 니 다.
pip 설치 및 사용 약...
소스 코드 설치
여기 도 약간...
개발 환경
virtualenv
가장 유행 하 는 Python 개발 환경 을 설정 하 는 방식.virtualenv 는 Python 에 독립 된 환경 을 설정 합 니 다.
왜 독립 된 Python 환경 을 설정 해 야 합 니까?
, 。 LibFoo , 。 ? /usr/lib/python2.7/site-packages( ) , 。
쉽게 말 하면 각 항목 은 서로 다른 / 독립 된 Python 환경 에 있 습 니 다.모든 항목 에 필요 한 가방 을 독립 된 환경 에 설치 합 니 다.
pip 설치
sudo pip install virtualenv
pip 를 설치 하여 프로젝트 에 독립 된 Python 환경 을 만 듭 니 다.
$ mkdir my_project_venv
$ virtualenv --distribute my_project_venv
。。。。안 써 요. 제 가 예전 에 정리 한 글 참고 하 세 요...LINK
기타 중요 한 도구
편집기
Vim
IDE like Sublime text
Pyflakes
패키지 검사 도구
Requests: HTTP 라 이브 러 리
Flask: 웹 개발 프레임 워 크
Django: 웹 개발 의 전체 스 택 프레임 워 크
Scipy: 과학적 계산 도구
PEP 8: 파 이 썬 스타일 가이드
REF(Original):http://mirnazim.org/writings/python-ecosystem-introduction/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.