모듈이 모듈?
why ? 한 파일에 함수와 코드를 모두 정의하게 되면,
하나의 파일이 너무 길어질 수 있다.
what ?
2-1 코드를 모듈화 시키면 한 파일에서 구현하는게 명확해져서
코드를 짜고 관리하기 쉬워진다.
2-2 특정 기능을 다른 여러 프로그램에서
중복으로 사용될 때 재사용하기도 가능해진다.
how ? 모듈을 만들고 불러오는건 어떻게 해야할까.
모듈 가져오기 : 파일명(area)에 있는 모든 함수를 쓸 수 있게 된다.
import area
함수 가져오기 : 파일명(area) 안에 함수(circle)를 쓸 수 있게 된다.
from area import circle
print(circle(2))
모듈 이름 간소화 하기
모듈 이름은 계속 써야하기 때문에 매번 불러오기 번거롭다.
import calculator as cal
calculator 대신 cal을 쓰겠다고 선언하기
✍스탠다드 라이브러리
-int float string과 같은 자료형
-print dir 같은 내장 함수
-유용한 기능을 제공하는 모듈들.
math 메소드 (수학적인 계산을 할 때)
import math
print(math.log10(100))
import random
randint은 두 수 사이의 랜덤한 정수를 리턴
uniform은 두 수 사이의 랜덤한 소수를 리턴
import random
print(random.randint(1, 20))
print(random.uniform(0 ,1))
import datetime
날짜와 시간 관련
import datetime
print(datetime.datetime(2020, 9, 21))
print(datetime.datetime(2020, 9, 21, 14, 3, 20))
>> 오늘 날짜는?
today = datetime.datetime.now()
>> 기간
today = datetime.datetime.now()
christmas = datetime.datetime(2020, 12, 25, 4, 44, 44))
print(christmas - today)
>> 추출하기
print(today.year)
print(today.month)
✍ 그 외
os.path 파일 경로를 다룰 때
re 특정한 규칙.패턴을 가진 문자열을 표현
json pikcle과 비슷하게 오브젝트를 json으로 바꾼다. 기본 데이터 타입,리스트, 딕셔너리 만 바꿀 수 있다.
copy 파이썬 오브젝트를 복사할때
sqlite 파이썬에서 SQLite 데이터베이스를 사용
✍모듈을 찾아오는 경로 알기
print(sys.path)
파이썬은 모듈을 찾기 위해 경로들을 순서대로 살핀다.
첫번째로는 실행한 파일에 같은 폴더에 있는지
나머지는 파이썬이 디폴트로 정해놓은 경로를 본다.
sys.path의 마지막 경로를 보면
외부 패키지를 활용할 때 site-packages라는 곳에 저장된다고 함.
✍경로 추가하기
sys.path.append('경로')
> `클래스 개념`💩
```python
프로그래밍 객체를 생성하기 위한 설계도로서 class 를 불러올 때도
동일하게 import 를 사용한다.
>
import shapes(파일 이름)
>
circle = shapes.Circle(2)
print(circle.erea())
>
예....? 아직 calss 개념을 제대로 모르겠다.
리스트 비슷한 개념이여서 함수처럼 바로 리턴되는 것이 아니라
print 함수로 출력해주어야 한다는....것만 기억해본다....