Unit 44. 모듈과 패키지 사용하기
지금까지 파이썬 코드를 작성하면서 input, print 등의 내장 함수(built-in function)를 주로 사용했는데, 내장 함수만으로는 할 수 있는게 별로 없습니다. 그래서 좀 더 복잡한 프로그램을 만들려면 파이썬의 모듈과 패키지를 사용해야 합니다. 우리가 책 중간 중간에 사용했던 random, turtle, pickle 등이 바로 모듈과 패키지입니다.
모듈(module)은 각종 변수, 함수, 클래스를 담고 있는 파일이고, 패키지(package)는 여러 모듈을 묶은 것입니다. 파이썬을 설치할 때 다양한 모듈과 패키지가 기본으로 설치됩니다. 만약 기본 모듈과 패키지로 부족하다면 다른 사람이 만든 유명 모듈과 패키지를 설치해서 쓸 수도 있습니다.
모듈 < 패키지 < 파이썬 표준 라이브러리(Python Standard Library, PSL)
클래스는 모양만 만들어 놓는다? ex 붕어빵 틀?
1. 클래스는 여러개의 내장함수를 합쳐 놓은거? 아니면 패키지를 예를 들어 로봇의 모든 움직임에 대한 명령어들을 놓은것으로 이해하는 건가요? 아니면 생성한 Turtle로 이해하는 건가요? 아니면 틀을 만들어 놓고 필요시 불러오는 것인가요?
2. 패키지와 Class의 차이점은 무엇인가요?
3. t = turtle.Turtle() 이거라면 t.speed(0) == turtle.Turtle(speed(0))의 뜻인가요?
4. length += 5는 length = length + 5?
# : python에서 주석 기호 명령어
[ ] : python에서 리스트 기호 명령어
colors = ["red","purple","blue","green","yellow","orange"]
t=turtle.Turtle()
turtle.bgcolor("black") #bgcolor()는 turtle에서 제공하는 함수
t.speed(0) #생성된 turtle 객체가 가지고 있는 기능
t.width(2)
length = 10 # length는 변수(값이 바뀌는...)임 - 작성자가 만들은 것
while length < 500:
t.forward(length)
t.pencolor(colors[length%6])
t.right (89)
length += 5
CPU / RAM == 전자의 움직임
SSD / HD == 물리적인 부분
Cache == 캐시 메모리
*C언어는 주소를 건드린다. - 레퍼런스는 주소라는 의미
#낙타체
- 변수의 첫 글자는 소문자로, 나머지 단어의 첫 글자는 대문자로 적는 방법
- 예를 들면 myNewCar처럼 첫 'm'은 소문자로, 나머지 단어들의 첫 글자는 대문자로 표기
- 일반적으로 C++, Java와 같은 객체지향 언어에서도 변수는 위와 같은 방식으로 적성함
/ 단 클래스명 작성 시에는 첫 글자를 반드시 대문자를 사용함 / 예를 들면 MyNewCar
변수를 활용하는 이유 - 수정시 한번에 처리하기 위함
# 유니코드는 16진수?
# 정수 7과 문자(열) '7' -> 정수 7 :00000000 00000000 00000111 (2진수)
# 문자(열) '7' : 00000000 00110111 (2) - > 유니(UNI)코드 기준
# 문자(열) '7' : 00110111 (2) -> 아스키(ASCII)코드 기준
'0' -> 48
'1' -> 49
'2' -> 50
'3' -> 51
'4' -> 52
'5' -> 53
'6' -> 54
'7' -> 55
*유니코드는 아스키코드를 포함하고 있다.
참고 | 모듈, 패키지, 라이브러리
파이썬을 배우다 보면 모듈, 패키지, 파이썬 표준 라이브러리와 같은 용어를 접하게 되는데 서로 비슷한 개념이지만 약간의 차이가 있습니다.
모듈: 특정 기능을 .py 파일 단위로 작성한 것입니다.
패키지: 특정 기능과 관련된 여러 모듈을 묶은 것입니다. 패키지는 모듈에 네임스페이스(namespace, 이름공간)를 제공합니다.
파이썬 표준 라이브러리: 파이썬에 기본으로 설치된 모듈과 패키지, 내장 함수를 묶어서 파이썬 표준 라이브러리(Python Standard Library, PSL)라 부릅니다.
댓글 없음:
댓글 쓰기