본문 바로가기
Python/Python Basic

Step1_Python

by emilia park 2023. 3. 15.
728x90

[파이썬(Python) ] 

파이썬은 1991년 네덜란드계 소프트웨어 엔지니어인 귀도 반 로섬이 발표한 고급프로그래밍 언어이다.

다른 프로그래밍 언어보다 가독성이 높고 문법이 쉽기 때문에 나같은 '비전공자' 도 쉽게 이해할 수 있는 언어라고 할 수 있다. 이처럼 파이썬은 초보자부터 전문가까지 다양한 사용자층을 보유하고 있으며, 다양한 플랫폼에서 쓸 수 있고 모듈이 풍부하기 때문에 이의 사용이 계속해서 증가하고 있다.

 

특징으로는 다음과 같다.

 

a) 객체 지향 언어이다.

객체 지향 언어란? 프로그램을 여러 객체로 만들어 이들끼리 서로 상호작용 하도록 만든 언어를 의미.

변수를 지정해주면 이에 함수를 적용시켜 객체끼리 상호작용을 하도록 만들어 줄 수 있다. 

객체 지향 언어

 

b) 문법이 쉽고 간결하다.

#C++

#include <iostream>
using namespace std;
int main() {
   cout<<"Hello, I'm Emilia!";
   return 0;
}

 

#Python

print(“Hello, I'm Emilia!”)

 

c) 라이브러리(모듈)이 풍부하다. 

파이썬에서는 프로그래머가 바로 사용할 수 있는 라이브러리와 통합환경이 함께 제공되어 표준 라이브러리가 풍부하다.

행렬 연산 패키지 'Numpy'나 이미지 처리를 위한 'Pillow' 등이 잘 알려져 있다. 

 

d) 인터프리터 언어이다. (스크립트 언어라고도 부름!)

인터프리터 언어란? 코드를 한 번에 한 줄씩 실행하는 언어를 의미. Python, JAVA, Ruby 등이 이에 해당.

(↔ 컴파일 언어 : 코드를 다른 목적 코드로 한 번에 번역 후 실행하는 언어를 의미. 즉, CPU가 알아들을 수 있는 low level 언어로 번역. C,C++이 이에 해당.)

인터프리터 언어는 코드를 한 번에 한 줄씩 읽어 들이며 명령을 내리다 보니 속도가 컴파일 언어에 비해 느리지만 고급 프로그램을 즉시 실행시킬 수 있고 수정이 간단하며, 컴파일 언어는 빠르게 동작하나 컴파일 과정에서 시간이 많이 소요되고 메모리도 많이 차지한다.

 

e) 동적 타이핑(dynamically typed) 대화형 언어이다.

동적 타이핑이란? 런타임 동안에 자료형을 검사하는 것을 의미. Python, Ruby 등의 인터프리터 언어가 이에 해당. 자료형 지정 필요 없음.

(↔ 정적 타이핑 : 자료형 검사가 컴파일 타임 동안 진행. C,C++,JAVA 등의 컴파일 언어가 해당. 즉 자료형을 미리 지정.)

정적 타이핑은 자료형에 대한 판단을 미리 하기 때문에 진행속도가 빠르고 type error 로 인한 문제점을 초기에 발견할 수 있고,

동적 타이핑은 자료형에 대한 정보를 미리 줄 필요가 없기 때문에 코드가 간결해지지만 런타임 도중 error 발생 확률이 높다. 

예시) 

#Python

a = 1
b = "hello python"
#Java 

int a;
float b; 

a = 1;
b = 3.14;

 

f) C, C++, JAVA 등 다른 프로그래밍 언어와 통합이 가능하다.

파이썬은 배우기 쉽고 생산성이 높은 언어인 것은 맞지만 느린 성능이 문제시 될 수 있다. 이를 극복하기 위해 일반적으로 많은 연산을 요구하는 부분에 있어서는 C나 C++을 Python 과 연결하는 방식으로 사용하기도 한다. 

 

g) 윈도우, 리눅스 등 다양한 플랫폼에서 사용이 가능하다.

 파이썬은 어떤 플랫폼인지에 관계없이 사용이 가능하다는 점에서 '독립적'이라고도 말할 수 있다.

 

 

TIOBE

이와 같이 파이썬은 가장 활용도가 높고 쉬운 프로그래밍 언어이며, 현재 TIOBE 사이트 23년도 3월 기준 1위를 차지하고 있어 세계에서 가장 인기있는 언어라고 볼 수 있다. 아직 C,C++,JAVA 랑 큰 차이가 나지 않고 있는데 이 정도 성장세면 언젠가 독보적인 위치에 오르지 않을까싶다.

이의 활용으로는 인공지능, 웹과 앱 개발, 게임제작, 핀테크 등이 있다.

 

이러한 파이썬은 소스코드가 들어있는 파일을 편집할 수 있는 툴인 'Editor' 가 필요하다. Python의 편의성을 위해 별도의 Editor 프로그램 설치는 필수적이다. Editor 의 종류로는 Pycharm, Jupyter, Visual Studio, IDLE 등이 있는데, 필자는 Jupyter와 Googlecolab이 편하다! 흠냥흠냥~ 암튼! 앞으로 코드 공부 하면서 Jupyter와 Googlecolab을 많이 활용할 예정이다.

 

 

 

정리) 

파이썬은

- 객체지향 언어

- 문법이 쉽고 간결

- 인터프리터 언어 

- 동적 타이핑 언어 

- 가장 활용도가 높고 쉬운 프로그래밍 언어

- 라이브러리가 풍부

- 전 세계에서 가장 인기있는 언어 (활용 : 인공지능, 웹과 앱 개발, 게임제작, 핀테크 등) 

- Editor 프로그램 설치 필요(Pycharm, Jupyer, Visual Studio, IDLE 등) 

 

 

reference) 

1) https://ko.wikipedia.org/wiki/%ED%8C%8C%EC%9D%B4%EC%8D%AC

2) https://www.tiobe.com/tiobe-index/

 

728x90