오늘도 개발
파이썬의 특징 본문
High-level(고급 언어)
파이썬은 고급언어이다.
- 저급언어 : CPU와 메모리를 직접 다루는 언어(예: c언어)
- 고급언어 : CPU와 메모리를 알아서 처리하는 언어(예: 파이썬, 자바스크립트)
Interpreted (인터프리티드)
파이썬은 인터프리터를 사용하는 스크립트 언어이다.
하지만 파이썬도 인터프리팅 전에 컴파일 과정을 거친다. (참고)
- 스크립트 언어 : 인터프리터를 사용하여 소스코드를 머신코드로 한 줄씩 번역하고 바로바로 실행하는 언어.
- 컴파일 언어 : 컴파일러를 소스코드를 한 번에 전부 번역한 뒤 머신코드로 된 실행 파일을 남기는 언어.
Multi-paradigm
아래 패러다임을 모두 지원한다.
- procedural programming(절차적 패러다임) :
- object-oriented programming(객체 지향 패러다임) :
- functional programming(함수형 패러다임) :
Dynamic typing(동적 타이핑)
코드를 실행할 때 변수의 자료형(type)을 동적으로 정하기 때문에
따로 자료형을 명시할 필요가 없다.
- 정적 타이핑 : 자료형을 컴파일 때 정함
- 동적 타이핑 : 자료형을 실행 시점에 정함
Garbage-collected(가비지 컬렉션)
파이썬은 필요없는 메모리를 알아서 정리해준다.
First-class Functions(일급함수)
변수와 똑같이 취급되는 함수를 First-class function이라고 한다.
파이썬에서는 모든 함수를 변수처럼 취급할 수 있다.
다른 함수의 인자로 넣을 수도 있고, 함수 내에서 함수를 반환할 수도 있다.
Single-threaded(싱글스레드)
기본적으로 싱글스레드로 동작한다.
Portablity(이식성)
파이썬은 VM을 사용하기 때문에 이식성이 좋다. (파이썬의 실행 과정 참조)
윈도우 용으로 작성한 파이썬 코드도 맥이나 리눅스에서 실행할 수 있다.
이식성 : 어떤 프로그램을 여러 OS에서 사용할 수 있는 것
참고
14 Most Important Python Features and How to Use them to Excel in Python Programming
'웹 프로그래밍 > Python3' 카테고리의 다른 글
| CPython이 변수를 처리하는 방법 (0) | 2022.06.01 |
|---|---|
| 파이썬 문자열(String) (0) | 2022.06.01 |
| 파이썬 숫자형에 사용하는 연산자 (0) | 2022.06.01 |
| 파이썬의 자료형 (0) | 2022.06.01 |
| 파이썬 인터프리터와 파이썬의 실행 과정 (0) | 2022.05.30 |