logo

Python 소개

프로그래밍 언어

  • 자연어는 같은 문장을 여러 의미로 해석할 가능성이 있음.
  • 프로그래밍 언어는 문법과 의미를 제한하여 컴퓨터가 명령을 일관되게 처리하도록 설계.
  • 프로그램: 프로그래밍 언어로 작성한 명령의 모음

Python

Python은 특정 분야에 한정되지 않는 범용 프로그래밍 언어.

  • 간결한 문법: 코드의 구조를 비교적 쉽게 읽고 작성 가능
  • 다양한 활용 분야: 데이터 분석, 인공지능, 업무 자동화, 웹 개발 등에 활용
  • 풍부한 라이브러리: 자주 필요한 기능을 직접 만들지 않고 불러와서 사용 가능
  • 높은 생산성: 짧은 코드로 아이디어를 빠르게 시험하고 결과 확인 가능

소스 코드와 기계어

  • 소스 코드(source code): 사람이 읽고 작성할 수 있는 형태의 프로그램
  • 기계어(machine code): 중앙 처리 장치(CPU)가 직접 실행할 수 있는 0과 1로 된 이진수 명령
  • 컴파일러(compiler): 프로그램을 실행하기 전에 소스 코드를 다른 형태로 번역하는 프로그램
  • 인터프리터(interpreter): 프로그램을 실행하면서 명령을 해석하고 처리하는 프로그램

가장 널리 사용되는 Python 구현인 CPython의 실행 과정.

Mermaid 다이어그램 원문

flowchart LR
    B[소스 코드] --> C[Python 컴파일러]
    C --> D[바이트코드]
    D --> E[Python 가상 머신]
    E --> F[실행 결과]
    style C fill:#DBEAFE,stroke:#2563EB,color:#111827
    style E fill:#DBEAFE,stroke:#2563EB,color:#111827

대화형 다이어그램을 불러오기 전에는 원문으로 표시됩니다.

  • 바이트코드(bytecode): Python 가상 머신이 처리할 수 있는 중간 명령
  • Python 가상 머신(Python Virtual Machine): 바이트코드를 읽고 실행하는 CPython의 구성 요소
  • CPU의 역할: 기계어로 만들어진 CPython 프로그램을 실행하여 바이트코드 처리

데이터 과학과 Python

Python을 이용하여 데이터를 불러오고, 변환하고, 분석하고, 시각화하는 전 과정을 하나의 언어로 처리 가능.

  • 데이터 처리: 표, 문자열, 날짜와 같은 여러 형태의 데이터 가공
  • 통계 분석과 시각화: 분석 결과를 수치와 그래프로 확인
  • 머신러닝과 인공지능: 학습 데이터를 이용한 예측 모형 개발
  • 자동화: 반복적인 파일 처리와 보고서 작성 자동화

분야별 라이브러리가 같은 Python 문법을 사용하므로 기초 문법을 익힌 뒤 여러 작업으로 확장 가능.

LLM과 Python

  • 거대 언어 모델(LLM)을 Python 코드의 작성, 설명, 수정에 활용 가능.
  • 관련 예제와 문서가 풍부하여 원하는 작업을 코드로 구체화하기에도 유리.
  • ChatGPT 등의 서비스는 유료 계정의 경우 바로 Python 코드를 실행할 수 있는 환경을 제공하기도 함.

주피터 노트북

주피터 노트북(Jupyter Notebook)은 설명과 Python 코드를 한 문서에서 작성하고 실행하는 작업 환경. 노트북 파일의 확장자는 .ipynb.

퀴즈

문제 1 / 4맞음: 0힌트: 0틀림: 0채점중: 0남음: 4

자연어와 비교한 프로그래밍 언어의 특징으로 알맞은 것은 무엇인가요?

  • 문법과 의미를 제한하여 명령을 일관되게 처리하도록 한다.
  • 문법과 의미를 자유롭게 하여 같은 명령을 다양하게 해석하도록 한다.
  • 소스 코드를 사람이 사용하는 자연어로만 작성하도록 한다.
  • 모든 명령을 0과 1로 직접 작성하도록 한다.

퀴즈를 풀려면 대화형 기능을 불러와야 합니다.

Previous
Python 실습