이롭게 현명하게

[Python] 파이썬 표준 라이브러리 본문

Python

[Python] 파이썬 표준 라이브러리

dev_y.h 2023. 4. 6. 18:31
728x90
반응형

※ 본 포스팅은 윈도우 11, Pycharm, Python3 환경에서 작성되었습니다.


표준 라이브러리는 파이썬을 설치할 대 자동으로 컴퓨터에 설치된다.

sys, re 모듈은 파이선의 중요한 표준 라이브러리이다.

코드 설명
import datetime

datetime.date(year,month,day)
날짜를 표현할 대 사용하는 함수
import time

time.time()
time.localtime()
time.asctime()
time.ctime()
time.strftime()
time.sleep()
시간과 관련된 모듈

time.time() : UTC(협정 세계 표준시)를 사용하여 현재 시간을 실수 형태로리턴
time.localtime() : time.time()이 리턴한 실수값을 연도,월,일,시,분,초...의 형태로 바꾸어주는함수
time.asctime() :  localtime()에 의해 반환된 튜플 형태의 값을 인수로 받아 날짜와 시간을 알아보기 쉬운 형태로 리턴
time.ctime() : asctime과 다르게 현재 시간만을 리턴한다.
time.strftime() : 시간에 관계된 것을 세밀하게 표현하는 여러 가지 포맷 코드를 제공
time.sleep() : 반복문에서 많이 사용한다. 일정시간 간격을 두고 루프를 실행할 수 있다.
import math

math.gcd()
math.lcm()
math.gcd() : 최대공약수 구하기
math.lcm() : 최소공배수 구하기
import random

random.random()
random.randint(start,end)
random.pop()
random.choice()
random.sample(리스트,리스트길이)
random.random() : 난수(규칙이 없는 임의의 수)를 발생시키는 모듈로 실수를 리턴
random.randint(start,end) : start와 end사이의 정수 중 난수값
random.pop() : 리스트의 요소 중에서 무작위로 하나를 선택하여 꺼낸 다음 그 값을 리턴
pop에 의해 사라진다.

random.choice() : 입력으로 받은 리스트에서 무작위로 하나를 선택하여 리턴
random.sample() : 리스트 요소를 무작위로 섞기
import itertools

itertools.zip_longest(*iterables, fillvalue=None)
itertools.permutations(iterable, r)

itertools.combinations(iterable, r)

itertools.combinations_with_replacement()
itertools.zip_longest(*iterables, fillvalue=None)
: 같은 개수의 자료형을 묶는 파이썬 내장함수인 zip과 똑같이 동작하지만 전달한 반복 가능 객체의 길이가 다르면 긴 것을 기준으로 빠진 값은 fillvalue에 설정한 값으로 채울 수 있다.

itertools.permutations(iterable, r) : 반복 가능 객체 중에서 r 개를 선택한 순열을 반복 가능한 객체로 리턴하는 함수

itertools.combinations(iterable, r) : 반복 가능 객체 중에서 r개를 선택한 조합을 반복 가능한 객체로 리턴하는 함수

itertools.combinations_with_replacement() : 같은 숫자를 허용하는 중복 조합
import functools

functools.reduce(function, iterable)
functools.reduce(function, iterable) : function을 반복 가능한 객체의 요소에 차례대로(왼쪽에서 오른쪽으로) 누적 적용하여 이 객체를 하나의 값으로 줄이는 함수
from operator import itemgetter

operator.itemgetter()
operator.attrgetter()
operator.itemgetter() : sorted와 같은 함수의 key 매개변수에 적용하여 다양한 기준으로 정렬할 수 있도록 도와주는 모듈
operator.attrgetter() : 객체의 속성으로 정
import shutil

shutil.copy()
shutil.move()
shutil : 파일을 복사(Copy)하거나 이동(move)할 때 사용하는 모듈
 import glob

glob(pathname)
glob(pathname) : 디렉터리에 있는 파일들을 리스트로 만들기
디렉터리 안의 파일들을 읽어서 리턴한다. *,? 등 메타 문자를 사용하여 원하는 파일만 읽을 수 있다.
import pickle

pickle.dump()
pickle.load()
pickle : 객체의 형태를 그대로 유지하면서 파일에 저장하고 불러올 수 있게 하는 모듈
pickle.dump() : 객체 그대로 파일에 저장
pickle.load() : 원래 있던 객체 상태 그대로 불러오기
import os

os.environ()
os.chdir()
os.getcwd()
os.system()
os.popen()

os : 환경 변수나 디렉터리,파일 등의  OS 자원을 제어할 수 있게 해주는 모듈

os.environ() : 내 시스템의 환경 변수 값을 알고 싶을 때
os.chdir() : 디렉터리 위치 변경
os.getcwd() : 디렉터리 위치 돌려받기
os.system() : 시스템 명령어 호출
os.popen() : 실행한 시스템 명령어의 결괏값 돌려받기
import zipfile

zipfile.ZipFile()
zipfile.extractcall()
zipfile.extract()


zipfile : 여러 개의 파일을 zip 형식으로 합치거나 이를해제할 때를 사용하는 모듈

zipfile.ZipFile(compression,compressionlevel) : 파일 압축하여 묶기
zipfile.extractcall() : 압축 해제
zipfile.extract() : 합친 파일에서 특정 파일만 해제
<compression 종류>

ZIP_STORED - 압축하지 않고 파일을 Zip으로만 묶는다. 속도가 빠르다.
ZIP_DEFLATED - 일반적인 ZIP 압축으로 속도가 빠르고 압축률은 낮다. (호환성이 좋다.)
ZIP_BZIP2 - bzip2 압축으로 압축률이 높고 속도가 느리다.
ZIP_LZMA - lzma 압축으로 압축률이 높고 속도가 느리다. (7zip과 동일한 알고리즘으로 알려져 있다.)
compressionlevel은 압축 수준을 의미하는 숫자값으로 1 ~ 9를 사용한다. 1은 속도가 가장 빠르고 압축률이 낮고, 9는 속도는 가장 느리지만 최대 압축을 한다.
import threading

threading.Thread()
스레드 : 한 프로세스 안에서 2가지 또는 그 이상의 일을 동시에 수행하는 일
threading.Thread() : 만든 스레드 객체가 동시 작업을 가능하게한다.
import tempfile

tempfile.mkstemp()
tempfile.TemporaryFile()
tempfile : 파일을 임시로 만들어서 사용할 때 유용한 모듈

tempfile.mkstemp() : 중복되지 않는 임시 파일의 이름을 무작위로 만들어서 리턴
tempfile.TemporaryFile() : 임시 저장 곤간으로 사용할 파일 객체를 리
import traceback

traceback.format_exc()
traceback : 프로그램 실행 중발생한 오류를 추적하고자 할 때 사용하는 모듈
traceback.format_exc() : traceback의 모듈의 format_exc()함수는 오류 추적 결과를 문자열로 리턴하는 함수
import json

json.load(파일객체)
json.dump(딕셔너리,파일객체)
json : JSON 데이터를 쉽게 처리하고자 사용하는 모듈이다.
json.load(파일객체) : 읽은 데이터를 딕셔너리 자료형으로 리턴
json.dump(딕셔너리,파일객체) : 딕셔너리 자료형을 JSON 파일로 생성할 때
ensure_ascii = False 옵셕 : 데이터를 저장할 때 아스키 형태로 변환하지 않겠다.
import urllib

urllib.request.urlopen(resource, context=context)
urllib : URL을 읽고 분석할 때 사용하는 모듈이다.
urllib.request.urlopen(resource, context=context) : 객체를 생성하여 read()로 리소스 내용 전체를 읽어 이를 저장할 수 있다.
import webbrowser

webbrowser.open_new()
webbrowser : 파이썬 프로그램에서 시스템 브라우저를 호출할 때 사용하는 모듈
webbrowser.open_new() : 파이썬으로 우베 페이지를 새창으로 열때

 

 

시간에 관계된 것을 표현하는 포맷 코드

포맷코드 설명
%a 요일 줄임말 Mon
%A 요일 Monday
%b 달 줄임말 Jan
%B January
%c 날짜와 시간을 출력함 06/01/01 17:22:21
%d 날(day) [01,31]
%H 시간(hour)-24시간 출력 형태 [00,23]
%I 시간(hour)-12시간 출력 형태 [01,12]
%j 1년 중 누적 날짜 [001,366]
%m [01,12]
%M [01,59]
%p AM or PM AM
%S [00,59]
%U 1년 중 누적 주-일요일을 시작으로 [00,53]
%w 숫자로 된 요일 [0(일요일),6]
%W 1년 중 누적 주-월요일을 시작으로 [00,53]
%x 현재 설정된 로케일에 기반한 날짜 출력 06/01/01
%X 현재 설정된 로케일에 기반한 시간 출력 17:22:21
%Y 년도 출력 2001
%Z 시간대 출력 대한민국 표준시
%% 문자 %
%y 세기부분을 제외한 년도 출력 01

 

 

기타 유용한 os 관련 함수

함수 설명
os.mkdir(디렉터리) 디렉터리를 생성한다.
os.rmdir(디렉터리) 디렉터리를 삭제한다.단, 디렉터리가 비어있어야 삭제가 가능하다.
os.unlink(파일) 파일을 지운다.
os.rename(src, dst) src라는 이름의 파일을 dst라는 이름으로 바꾼다.

 

 

 

[Python] 파이썬 외부 라이브러리

목차 pip Faker sympy [pip] pip : 파이썬 모듈이나 패키지를 쉽게 설치할 수 있도록 도와주는 도구 pip로 파이썬 프로그램을 설치하면 의존성 있는 모듈이나 패키지를 함께 설치해 주기 때문에 매우 편

devyihyun.tistory.com


잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊

댓글과 좋아요는 큰 힘이 됩니다!

 

 

728x90
반응형
Comments