Python에 대하여
포스트
취소

Python에 대하여

Python

정의

  • 인터프리터 방식의 고급 프로그래밍 언어
  • 1991년에 개발되었다.
  • 코드가 간결하고 가독성이 좋아 초보자부터 전문가까지 폭넓게 사용된다.

특징

  • 인터프리터 언어
    • 컴파일 없이 한 줄씩 실행한다.
    • 개발 및 디버깅이 빠르다.
  • 동적 타이핑
    • 변수 선언 시 자료형을 지정할 필요 없다.
  • 객체 지향 프로그래밍(OOP) 지원
    • 클래스, 상속, 캡슐화 등을 지원한다.
  • 함수형 프로그래밍 지원
    • lambda, map, filter 같은 함수형 문법도 사용할 수 있다.
  • 높은 가독성
    • 들여쓰기로 블록 구분 → 코드가 간결하고 읽기 쉬움
  • 크로스 플랫폼
    • Windows, macOS, Linux 등 다양한 OS에서 동작할 수 있다.
  • 풍부한 라이브러리
    • 과학, 웹, 인공지능, 데이터 분석 등 다양한 분야를 지원한다.
    • 예시 : NumPy, pandas, Flask, Django, TensorFlow 등

장점

  • 쉬운 문법
    • 영어처럼 읽히는 문법으로 이루어져 있다.
    • 초보자에게 적합하다.
  • 빠른 개발 속도
    • 코드량이 적은 편이다.
    • 프로토타입을 빠르게 제작할 수 있다.
  • 다양한 라이브러리와 프레임워크
    • 다양한 분야를 빠르게 구현할 수 있다.
    • 웹, 데이터 분석, AI 등이 해당한다.
  • 대규모 커뮤니티
    • 문제 해결 자료가 많다.
    • 개발자 지원이 활발하다.
  • 다양한 활용 분야
    • 대부분의 분야에서 사용할 수 있다.
    • 웹 개발, 데이터 분석, 머신러닝, 게임 개발 등이 해당한다.
  • 유연성
    • 범용적으로 활용할 수 있다.
    • 스크립트, 애플리케이션, 자동화 도구 등이 해당한다.

단점

  • 느린 실행 속도
    • 인터프리터 언어라 C/C++에 비해 느린 편에 속한다.
  • 모바일 앱 개발에 약하다.
    • 모바일 환경에서의 지원이 제한적이다.
    • 그래서 주로 웹, 데스크탑, 서버 측에서 사용된다.
  • 멀티스레딩에 제약(GIL)
    • 전역 인터프리터 락(GIL) 때문에 멀티코어 CPU 성능 활용이 제한된다.
  • 배포의 어려움
    • 파이썬 코드를 실행하려면 파이썬 환경이 필요해서 배포가 불편할 수 있다.
  • 런타임 오류 가능성
    • 동적 타이핑 언어라 실행 중 오류가 날 확률이 있다.
    • 정적 언어에 비해 안정성이 떨어질 수도 있다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.