C 역 에서 가장 완전한 Python 표준 라 이브 러 리 를 정리 하면 당신 이 원 하 는 것 은 모두 여기에 있 습 니 다.

python 표준 라 이브 러 리 사고 가이드:

1.운영 체제 인터페이스
os 모듈 은 운영 체제 와 관련 된 많은 함 수 를 제공 합 니 다.

>>> import os
>>> os.getcwd()      #          
'C:\\Python34'
>>> os.chdir('/server/accesslogs')   #          
>>> os.system('mkdir today')   #        mkdir 
0
"from os import*"대신"import os"스타일 을 사용 하 는 것 을 권장 합 니 다.이렇게 하면 운영 체제 에 따라 변화 하 는 os.open()이 내 장 된 함수 open()을 덮어 쓰 지 않도록 보장 할 수 있다.
os 상용 명령
번호
방법.
기능.
1
os.access(path, mode)
검사 권한 모드
2
os.chdir(path)
현재 작업 디 렉 터 리 변경
3
os.chflags(path, flags)
경로 의 표 시 를 숫자 표시 로 설정 합 니 다.
4
os.chmod(path, mode)
권한 변경
5
os.chown(path, uid, gid)
파일 소유자 변경
6
os.chroot(path)
현재 프로 세 스 의 루트 디 렉 터 리 변경
7
os.close(fd)
파일 설명자 fd 닫 기
8
os.closerange(fd_low, fd_high)
모든 파일 설명 자 를 닫 습 니 다.fd 에서low(포함)에서 fdhigh(포함 되 지 않 음),오 류 는 무시 합 니 다.
9
os.dup(fd)
파일 설명자 fd 복사
10
os.dup2(fd, fd2)
파일 설명자 fd 를 다른 fd2 로 복사 합 니 다.
 2.파일 어댑터
glob 모듈 은 디 렉 터 리 어댑터 검색 에서 파일 목록 을 만 드 는 함 수 를 제공 합 니 다:

>>> import glob
>>> glob.glob('*.py')
['primes.py', 'random.py', 'quote.py']
3.명령 행 인자
유 니 버 설 도구 스 크 립 트 는 명령 행 인 자 를 자주 호출 합 니 다.이 명령 행 매개 변 수 는 sys 모듈 의 argv 변수 에 링크 형식 으로 저 장 됩 니 다.
sys.argv
현재 실행 중인 명령 행 인자 목록(list)을 sys.argv 로 가 져 올 수 있 습 니 다.
변수 해석
sys.argv[0]현재 프로그램 이름
sys.argv[1]첫 번 째 인자
sys.argv[2]두 번 째 매개 변수
len(sys.argv)-1 매개 변수 개수(파일 이름 빼 기)
예 를 들 어 명령 행 에서"python demo.py one two three"를 실행 하면 다음 과 같은 출력 결 과 를 얻 을 수 있 습 니 다.

>>> import sys
>>> print(sys.argv)
['demo.py', 'one', 'two', 'three']
4.문자열 정규 일치
re 모듈 은 고급 문자열 처리 에 정규 표현 식 도 구 를 제공 합 니 다.파충류 의 필수 라 고 할 수 있 습 니 다.복잡 한 일치 와 처리 에 있어 정규 표현 식 은 간결 하고 최적화 된 해결 방안 을 제공 합 니 다.간단 한 기능 만 필요 하 다 면 먼저 문자열 방법 을 고려 해 야 합 니 다.매우 간단 하고 읽 기 쉽 고 디 버 깅 하기 쉽 기 때 문 입 니 다.

>>> 'tea for too'.replace('too', 'two')
'tea for two'
re.match 함수
re.match 는 문자열 의 시작 위치 에서 패턴 과 일치 하려 고 시도 합 니 다.시작 위치 가 일치 하지 않 으 면 match()는 none 으로 돌아 갑 니 다.
함수 문법:

re.match(pattern, string, flags=0)
함수 매개 변수 설명:
매개 변수
묘사 하 다.
pattern
일치 하 는 정규 표현 식
string
일치 할 문자열 입 니 다.
flags
표지 위 치 는 정규 표현 식 의 일치 방식 을 제어 하 는 데 사 용 됩 니 다.예 를 들 어 대소 문자 구분 여부,여러 줄 의 일치 여부 등 입 니 다.
일치 하 는 re.match 방법 은 일치 하 는 대상 을 되 돌려 줍 니 다.그렇지 않 으 면 None 로 돌아 갑 니 다.
우 리 는 group(num)이나 groups()일치 하 는 대상 함 수 를 사용 하여 일치 하 는 표현 식 을 가 져 올 수 있 습 니 다.
매 칭 대상 방법
group(num=0)과 일치 하 는 전체 표현 식 의 문자열 을 설명 합 니 다.group()은 한 번 에 여러 개의 그룹 번 호 를 입력 할 수 있 습 니 다.이 경우 그룹 에 대응 하 는 값 을 포함 하 는 원 그룹 을 되 돌려 줍 니 다.groups()는 모든 그룹 문자열 을 포함 하 는 원 그룹 을 1 에서 포함 하 는 그룹 번호 로 되 돌려 줍 니 다.
5.수학 계산
math 모듈 은 부동 소수점 연산 에 바 텀 C 함수 라 이브 러 리 에 대한 접근 을 제공 합 니 다.

>>> import math
>>> math.cos(math.pi / 4)
0.70710678118654757
>>> math.log(1024, 2)
10.0
실제 작업 에서 math 표준 라 이브 러 리 는 수 요 를 만족 시 키 지 못 합 니 다.저 는 확장 라 이브 러 리 가 필요 합 니 다:NumPy
NumPy(Numerical Python)는 대량의 차원 배열 과 행렬 연산 을 지원 하 며,또한 배열 연산 에 대해 대량의 수학 함수 라 이브 러 리 를 제공 합 니 다.
6.메 일 발송
인터넷 에 접근 하고 네트워크 통신 프로 토 콜 을 처리 하 는 데 사용 되 는 몇 가지 모듈 이 있다.그 중에서 가장 간단 한 두 가 지 는 urls 에서 받 은 데 이 터 를 처리 하 는 urllib.request 와 이메일 을 보 내 는 smtplib 입 니 다.

import smtplib
smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )
매개 변수 설명:
host:SMTP 서버 호스트.호스트 의 ip 주소 나 도 메 인 이름 을 지정 할 수 있 습 니 다.예 를 들 어 runoob.com,이것 은 선택 가능 한 매개 변수 입 니 다.
port:host 인 자 를 제공 하면 SMTP 서비스 에서 사용 할 포트 번 호 를 지정 해 야 합 니 다.일반적인 경우 SMTP 포트 번 호 는 25 입 니 다.
local_hostname:SMTP 가 이 컴퓨터 에 있다 면 서버 주 소 를 localhost 로 지정 하면 됩 니 다.
Python SMTP 대상 은 sendmail 방법 으로 메 일 을 보 냅 니 다.문법 은 다음 과 같 습 니 다.

SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])
매개 변수 설명:
from_addr:메 일 발송 자 주소.
to_addrs:문자열 목록,메 일 주소.
메시지 보 내기
사례:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
import smtplib
from email.mime.text import MIMEText
from email.header import Header
 
sender = '[email protected]'
receivers = ['[email protected]']  #     ,      QQ        
 
#     :        ,    plain       ,    utf-8     
message = MIMEText('Python       ...', 'plain', 'utf-8')
message['From'] = Header("    ", 'utf-8')   #    
message['To'] =  Header("  ", 'utf-8')        #    
 
subject = 'Python SMTP     '
message['Subject'] = Header(subject, 'utf-8')
 
try:
    smtpObj = smtplib.SMTP('localhost')
    smtpObj.sendmail(sender, receivers, message.as_string())
    print "      "
except smtplib.SMTPException:
    print "Error:       "
7.날짜 와 시간
datetime 모듈 은 날짜 와 시간 처리 에 간단 하고 복잡 한 방법 을 동시에 제공 합 니 다.
날짜 와 시간 알고리즘 을 지원 하 는 동시에 더욱 효과 적 인 처리 와 포맷 출력 에 중점 을 두 었 습 니 다.
이 모듈 은 시간 대 처리 도 지원 합 니 다:

>>> # dates are easily constructed and formatted
>>> from datetime import date
>>> now = date.today()
>>> now
datetime.date(2003, 12, 2)
>>> now.strftime("%m-%d-%y. %d %b %Y is a %A on the %d day of %B.")
'12-02-03. 02 Dec 2003 is a Tuesday on the 02 day of December.'
시간의 세 가지 존재 방식:시간 대상,시간 문자열,시간 스탬프.
(1)문자열 전 datetime:

>>> string = '2014-01-08 11:59:58'
>>> time1 = datetime.datetime.strptime(string,'%Y-%m-%d %H:%M:%S')
>>> print time1
2014-01-08 11:59:58
(2)datetime 문자열 바 꾸 기:

>>> time1_str = datetime.datetime.strftime(time1,'%Y-%m-%d %H:%M:%S')
>>> time1_str
'2014-01-08 11:59:58'
(3)타임 스탬프 회전 시간 대상:

>>>time1 = time.localtime()
>>>time1_str = datetime.datetime.fromtimestamp(time1)
8.데이터 압축
다음 모듈 은 일반적인 데이터 패키지 와 압축 형식 을 직접 지원 합 니 다:zlib,gzip,bz2,zipfile,tarfile.

>>> import zlib
>>> s = b'witch which has which witches wrist watch'
>>> len(s)
41
>>> t = zlib.compress(s)
>>> len(t)
37
>>> zlib.decompress(t)
b'witch which has which witches wrist watch'
>>> zlib.crc32(s)
226805979
9.성능 측정
일부 사용자 들 은 같은 문 제 를 해결 하 는 서로 다른 방법 간 의 성능 차 이 를 이해 하 는 데 관심 이 많다.Python 은 이 문제 들 에 직접적인 답 을 제공 하 는 도량형 도 구 를 제공 했다.
예 를 들 어 원 조 를 봉인 하고 개봉 하여 원 소 를 교환 하 는 것 이 전통 적 인 방법 을 사용 하 는 것 보다 훨씬 매력 적 으로 보이 고 timeit 는 현대 의 방법 이 더 빠르다 는 것 을 증명 했다.

>>> from timeit import Timer
>>> Timer('t=a; a=b; b=t', 'a=1; b=2').timeit()
0.57535828626024577
>>> Timer('a,b = b,a', 'a=1; b=2').timeit()
0.54962537085770791
timeit 의 입자 도 에 비해 mod:profflee 와 pstats 모듈 은 더 큰 코드 블록 에 대한 시간 측정 도 구 를 제공 합 니 다.
10.테스트 모듈
고 품질 소프트웨어 를 개발 하 는 방법 중 하 나 는 모든 함수 에 테스트 코드 를 개발 하고 개발 과정 에서 자주 테스트 하 는 것 이다.
doctest 모듈 은 모듈 을 스 캔 하고 프로그램 에 내 장 된 문서 문자열 에 따라 테스트 를 수행 하 는 도 구 를 제공 합 니 다.
테스트 구 조 는 출력 결 과 를 간단하게 잘라 서 문서 문자열 에 붙 이 는 것 과 같 습 니 다.
사용자 가 제공 한 예 를 통 해 문 서 를 강화 하여 doctest 모듈 에서 코드 의 결과 가 문서 와 일치 하 는 지 확인 할 수 있 습 니 다.

def average(values):
    """Computes the arithmetic mean of a list of numbers.
    >>> print(average([20, 30, 70]))
    40.0
    """
    return sum(values) / len(values)
 
import doctest
doctest.testmod()   #         
 
이상 은 python 표준 라 이브 러 리 입 니 다.제 모든 정리 입 니 다.댓 글 교류 환영 합 니 다~

좋은 웹페이지 즐겨찾기