본문 바로가기
DEV/파이썬 이론

파이썬 코딩 :: 파이썬 모듈(Module), 파이썬 스탠다드 라이브러리

by 올커 2022. 9. 2.

파이썬 모듈(module), 스탠다드 라이브러리


1. 모듈

모듈은 기능들을 정리해 둔 파일을 칭하며, 아래와 같이 불러올 수 있다.

## 방법 (1)
import 파일명(as 별칭)

파일명.함수명()
별칭명.함수명()

 

여기서 가져올 파일은 모듈을 말하고, 같은 저장경로에 위치해야 하며, 파일명은 확장자를 뺀 파일명을 사용한다.

별칭(Alias)은 모듈이름을 간소화하고자 할 때 사용한다.

## 방법 (2)
from 파일명 import 사용할함수명(전체를 가져올 경우 *)

함수명()

함수 기준으로 가져오고자 할 때에는 위와 같은 방법을 사용할 수 있다. 이는 이전에 동일하게 포스팅한 적이 있다.

  (*참고 : 파이썬 기초이론 :: 응용(파일 불러오기, 삼항연산자))

그러나 전체를 가져오고자 *를 사용할 경우 함수들의 출처가 불분명해지는 단점이 있으므로

아래와 같이 직접적으로 사용하는 것이 좋다.

from calculator import add, multiply

print(add(2,5))
print(multiply(3,4))

 

2. 스탠다드 라이브러리(Standard library)

 파이썬에서 자주 사용되는 함수들을 제공하기 위해 기본적으로 내장하고 있는 모듈들을 갖고 있는 라이브러리

  (1) math : 자주 사용하는 수학 연산을 가능케하는 모듈

import math

print(math.log10(100))
print(math.cos(0))
print(math.pi)

  (2) random : 임의의 숫자를 제공하는 모듈 (random, randint, uniform, ...)

import random

print(random.random())     ## 임의의 하나의 수 리턴
print(random.randint(1, 20))       ## 1에서 20까지의 수중 하나의 정수 리턴
print(random.uniform(0, 1))       ## 0에서 1까지의 수중 하나의 소수 리턴

  (3) os : 컴퓨터 운영체제 관련 모듈

import os

print(os.getlogin())
print(os.getcwd())

  (4) datetime : 날짜, 시간을 다루기 위한 클래스를 가진 모듈

  - 값 생성하기

## 값 생성하기(1)
pi_day = datetime.datetime(2022, 9, 2)
print(pi_day)
print(type(pi_day))

>>> 2022-09-02 00:00:00
>>> <class 'datetime.datetime'>

## 값 생성하기(2) 
pi_day = datetime.datetime(2022, 9, 2, 13, 6, 15)
print(pi_day)

>>> 2022-09-02 13:06:15

  - 오늘 날짜 확인하기

## 오늘 날짜
today = datetime.datetime.now()
print(today)

>>> 2022-09-02 11:49:12.360266

  - 시간 계산하기

## 시간 더하기
today = datetime.datetime.now()
my_timedelta = datetime.timedelta(days=5, hours=3, minutes=10, seconds=50)

print(today)
print(today + my_timedelta)

>>> 2022-09-02 10:54:24.221660
>>> 2022-09-07 14:05:14.221660

## 시간 빼기(두 시간 사이의 기간)
today = datetime.datetime.now()
pi_day = datetime.datetime(2020, 3, 14, 13, 6, 15)
print(today - pi_day)
print(type(today - pi_day))

>>> 22 days, 4:42:57.360266

 - 시간 단위별 값 추출하기

## 시간 단위별 값 추출하기
today = datetime.datetime.now()

print(today)
print(today.year)  # 연도
print(today.month)  # 월
print(today.day)  # 일
print(today.hour)  # 시
print(today.minute)  # 분
print(today.second)  # 초
print(today.microsecond)  # 마이크로초

 - datetime 포맷팅

today = datetime.datetime.now()

print(today)
print(today.strftime("%A, %B %dth %Y"))

>>> 2022-09-02 11:52:05.408810
>>> Friday, September 02th 2022

  ※ 포맷 코드의 종류

반응형

댓글