Java를 교육받고 보다 다양한 언어들을 사용해보기 위해서 파이썬을 공부하기 시작했다.
파이썬을 이해하기 위해선 기본적으로 인터프리터와 컴파일러의 차이를 알아야 한다.
간단하게 정리하자면
컴파일러(Compiler): 컴파일러는 코드를 작성하게 되면 해당 프로그램 전체를 기계어로 번역한다.
컴파일러는 최초 실행 시 실행 파일을 생성하며 (때문에 느리다) 그 다음 실행 시부터는 최초 실행시 만든 실행 파일을 실행하기 때문에 그 이후부터는 빠르게 실행 할 수 있다.
최초에 실행할 때 한 번에 전체 번역을 하기 때문에 프로그램 실행 전에 오류를 알 수 있어 해당 코드에 오류가 있다면 실행전에 오류를 출력해준다.
ex) Java, C, C++
인터프리터(Interpreter): 실행 시 한 문장 씩 번역하여 실행한다.
한 문장씩 번역 -> 실행하기 때문에 실행시간이 느리다. & 일단 실행 후 오류 발견 시 실행 중지가 된다.
그러나 컴파일러가 실행파일을 만드는 과정에서 많은 메모리를 할당하는 데 비해 인터프리터는 그러한 과정이 없기 때문에 메모리 효율이 컴파일러에 비해 좋다.
ex) Python, JavaScript
파이썬은 위에서 살펴본 것 중에서 인터프리터 언어이다.
파이썬을 익히기로 한 이유이면서 장점은 다음과 같다.
1. 문법이 단순하다.
문법이 단순하다는 것을 간단하게 자바와 비교해보자
public class Test {
public static void main(String[] args) {
int a = 10;
int b = 20;
int result = a + b;
System.out.println("result: " + result);
}
}
자바로 a와 b의 변수를 선언하고 그 합을 구하는 단순한 코드이다.
같은 결과를 출력하는 코드를 파이썬으로 작성해보자.
a = 10
b = 20
print("result", a+b)
눈에 보이는 차이를 간단하게 살펴보면
1. Test.java를 만들지 않고 단순하게 .py파일을 만들어 main 메소드 사용없이 코드를 작성했다.
2. 변수를 선언할 때 변수의 데이터 타입을 명시하지 않는다.
3. 출력문이 단순하다.
2. 다양한 라이브러리 사용가능
자바를 사용하면서 외부 라이브러리를 사용할 때 lib 폴더를 만들어서 .jar 파일을 다운로드 받거나, Spring Framework에서 pom.xml에 dependency를 추가해주는 방식으로 라이브러리를 사용했다면
파이썬에서 라이브러리를 사용하는 방법은 단순하게 표현할 수 있다.
import numpy as np
다음과 같이 추후에 알아볼 numpy라는 라이브러리를 추가할 수 있다.
물론 저렇게 한 줄만 작성하고 끝나는 게 아니고 pip install을 하거나 npm을 사용하는 방식을 거쳐야하긴 하지만
그 마저도 다음과 같이 사용 가능하다.
pip install numpy
다음과 같이 터미널에서 pip install numpy라는 것만 작성하면 라이브러리가 환경에 설치되고 numpy라는 라이브러리를 사용할 수 있다.
pip 사용법이나 파이썬을 사용할 때 가상환경을 구축하는 방법은 다음 포스팅에서 알아보도록 하겠다.
'Dev > Python' 카테고리의 다른 글
[FastAPI] 1. 설치 및 실행 (0) | 2024.08.20 |
---|---|
03. tuple, dictionary (2) | 2023.11.24 |
02. 가상환경 설정 & Numpy 개요 (0) | 2023.11.07 |