- 모듈 사용
- import 키워드를 이용
- as 키워드 -> 모듈 이름 단축가능
ex) import calculator as cal
cal.add(10, 20)
-> calculator라는 모듈을 임포트하고 cal이라고 부르겠다 선언
- from ~ as 키워드 -> 모듈의 특정기능만 사용하도록 함
ex) from calculator import add
add(10, 20)
-> calculator 모듈에 있는 여러 함수 중, add 함수만 가져와서 사용하겠다 선언
-> calculator.add()라고 모듈명을 붙이지 않고 add()처럼 함수명만 불러서 사용가능
- from calculator import * -> calculator 모듈의 모든 함수를 가져온다는 뜻
- 실행(메인) 파일 !! 이해어려움
- name 전역변수 : name 에는 모듈 이름(파일명)이 저장되거나 'main'이 저장됨
ex) addModule.py -> name='addModule'
- 실행파일(프로그램의 시작파일)인 경우에는 name='main'이 저장됨
-> 이걸 이용해 실행파일을 찾을 수 있음
if name == 'main':
print(f'name: {name}')
-> 이 파일이 실행파일일 경우에만 실행문을 실행하고, 그렇지않다면 실행X하도록 조건문 설정
- 패키지
- 패키지 -> 관련있는 모듈을 그룹으로 묶어 정리, 관리 가능
- 디렉토리로 모듈을 묶어 사용
from CalculatorForInt(패키지명) import addCal(모듈명)
addCal.add()
- site-packages
- site-packages에 있는 모듈은 어디서나(범용적으로) 사용가능
- 파일경로 : Lib - site-packages
- math 모듈
-
pow(수, 지수) -> 수의 거듭제곱을 구함
-
round(수, 소수점n번째자릿수) -> n+1자릿수에서 반올림해서 n자릿수까지만 구함
-
math.fabs(수) -> 절댓값을 구함
-
math.ceil(수) -> 올림 (5.21 -> 6) (-5.21 -> -5)
-
math.floor(수) -> 내림 (5.21 -> 5) (-5.21 -> -6)
-
math.trunc(수) -> 버림 (5.21 -> 5) (-5.21 -> -5)
-
math.gcd(14, 21) -> 최대공약수를 구함
-
math.factorial(10) -> 팩토리얼을 구함
-
math.sqrt(4) -> 제곱근을 구함 (어떤 수를 두 번 곱하면 입력한 수가 나오는지)
- random 모듈
- random.randint
- random.sample
- time 모듈
- time.localtime() -> 현재 시간을 구해줌
- time.localtime.tm_year -> 현재 시간의 연도만 구해줌
- time.localtime.tm_mon (월)
- time.localtime.tm_mday (일)
- time.localtime.tm_hour (시)
- time.localtime.tm_min (분)
- time.localtime.tm_sec (초)
- time.localtime.tm_wday (요일)
- 객체지향 프로그래밍
-> 객체를 이용한 프로그램
- 객체(Object) = 속성(Attribute) + 기능(Function)
- 모든 것은 객체이며, 객체는 구성하는 '속성'과 그걸 이용해서 할 수 있는 '기능'이 있음
- 객체는 클래스에서 생성됨. 클래스로부터 원하는 만큼 객체를 만들 수 있음.
- 객체 사용의 장점 : 코드 재사용 가능, 모듈화에 유리함
- 클래스와 객체 생성 !!!생소하고 어려움!!!
- 클래스는 class 키워드, 속성(변수), 기능(함수)를 이용해 만듬
- 클래스 이름은 첫번째 문자를 대문자로.
- 객체가 생성될 때 속성을 초기화함
ex) class Car:
def init(self, col, len): -> col, len이 변수(속성)
self.color = col
self.length = len
- 객체 속성 변경
<제로베이스 데이터 취업 스쿨>