📍 Module(모듈)
: 파이썬 정의와 문장들을 담고 있는 파일
import fibo
# fibo.py
# # 반복문
# def fib_loop(n):
# result = [1, 1]
# for i in range(1, n):
# end1 = result[-1]
# end2 = result[-2]
# fib_num = end1 + end2
# result.append(fib_num)
# return result[-1]
# # 재귀
# def fib_rec(n):
# if n == 0 or n == 1:
# return 1
# else:
# return fib_rec(n-1) + fib_rec(n-2)
fibo.fib_rec(5) # 8
📍 Pakage(패키지)
: 파이썬 정의와 문장들을 담고 있는 파일
myPackage/
__init__.py
math/
__init__.py
fibo.py
fomula.py
- 모듈들의 집합인 폴더
- 패키지 안에 __init__.py 파일이 있어야 패키지로 인식
from myPackage.math import fomula
# fomula.py
# pi = 3.14
# def my_max(a, b):
# if a > b:
# return a
# else:
# return b
fomula.my_max(1, 2) # 2
import myPackage
# 매번 코드가 길어지기 때문에 import로 열어주는 것이 일반적인 방법
print(myPackage.math.fomula.my_max(1, 2)) # 2
print(myPackage.math.fomula.pi) # 3.14
# *를 사용하면 모든 함수를 불러옴
# 메모리에 부하가 오기 때문에 사용할 함수만 들고 오는 것이 일반적
from myPackage.math.fibo import *
fib_loop(5) # 8
✅ 파이썬 내장 패키지
✔️ math
import math
print(math.pi) # 3.141592653589793
print(math.e) # 2.718281828459045
print(math.sqrt(9)) # 3.0 제곱근
print(math.factorial(10)) # 3628800
pi = math.pi
print(math.ceil(pi)) # 4 올림
print(math.floor(pi)) # 3 내림
✔️ random
import random
# 0 ~ 1사이의 실수
print(random.random()) # 0.9939747010793726
# a, b 사이의 정수
print(random.randint(1, 10)) # 3
# 1을 기반으로 한 random 출력이 나오므로 같은 값 출력
random.seed(1)
random.random() # 0.13436424411240122
a = [1, 2, 3, 4, 5]
# 데이터의 순서를 랜덤하게 바꿈
random.shuffle(a)
print(a) # [4, 2, 5, 3, 1]
# 무작위로 하나의 원소 출력
rcp = ['가위', '바위', '보']
random.choice(rcp) # '바위'
# range 내에서 랜덤하게 n개 원소 출력
random.sample(range(1, 46), 6) # [31, 42, 25, 14, 7, 32]
✔️ datetime
from datetime import datetime
print(datetime.now()) # 2024-01-15 16:12:04.990873
print(datetime.today()) # 2024-01-15 16:12:04.990961
print(datetime.utcnow()) # 2024-01-15 07:12:04.990977
now = datetime.now()
print(now.strftime('%Y년 %m월 %d일')) # 2024년 01월 15일
print(now.strftime('%y년')) # 24년
print(now.year) # 2024
print(now.weekday()) # 0 0~6 / 월~일
from datetime import timedelta
birth = datetime(2024, 1, 1)
future = timedelta(days=3)
print(birth + future) # 2024-01-04 00:00:00
new_year = datetime(2025, 1, 1)
now = datetime.now()
print(new_year - now) # 351 days, 7:47:55.002354
now = datetime.now()
f = timedelta(days=100)
print(now + f) # 2024-04-24 16:12:04.999944
'Python' 카테고리의 다른 글
[Python / 기초] 파이썬 클래스(OOP) 활용 (0) | 2024.01.15 |
---|---|
[Python / 기초] 파이썬 클래스(OOP) - 생성자, 소멸자, 인스턴스, 변수, 메소드, 상속 (0) | 2024.01.15 |
[Python / 기초] 파이썬 error 예외처리 - try, except, else, finally, raise (0) | 2024.01.12 |
[Python / 기초] 파이썬 세트메소드 - add, update, remove, pop, map, filter, zip (0) | 2024.01.12 |
[Python / 기초] 파이썬 딕셔너리메소드 - pop, update, get (0) | 2024.01.12 |