본문 바로가기

03. Python

01. Python

728x90

python

  • 1990년 암스테르의 귀도 반 로섬(Guido Van Rossum)이 개발한 인터프리터 언어
  • 파이썬의 사전적 의미
    • 고대 신화에 나오는 파르나소스 산의 동굴에 살던 큰 뱀
  • 구글에서 만든 소프트웨어의 50% 이상이 파이썬으로 작동됨
  • 인스타그램(Instagram), 넷플릭스(Netflix), 아마존(Amazon) 등에서 사용
  • 공동 작업과 유지 보수가 매우 쉽고 편리함

python의 특징

  • 문법이 쉬워 빠르게 배울 수 있다
    • 문법 자체가 아주 쉽고 간결하며 사람의 사고 체계와 매우 닮아 있음
    • 유명한 프로그래머인 에릭 레이먼드(Eric Raymond)는 공부한 지 단 하루 만에 자신이 원하는 프로그램을 작성!
  • 무료이지만 강력하다
    • 오픈 소스 → 무료로 언제 어디서든 파이썬을 다운로드하여 사용 가능
    • 파이썬과 C는 찰떡 궁합
      • 프로그램의 전반적인 뼈대는 파이썬으로 만들고, 빠른 실행 속도가 필요한 부분은 C로 만들어서 파이썬 프로그램 안에 포함
  • 간결하다
    • 프로그램이 실행되게 하려면 줄(들여쓰기)을 반드시 맞추어야 함
      • 가독성 ↑
languages = ['python','perl','c','java']

for lang in languages:
    if lang in ['python','perl']:
        print("%6s need interpreter" % lang)
    elif lang in ['c','java']:
        print("%6s need compiler" % lang)
    else:
        print("should not reach here")
  • 개발 속도가 빠르다
    • 파이썬의 엄청나게 빠른 개발 속도를 두고 유행처럼 퍼진 말
  • 파이썬으로 할 수 있는 일
    • 웹 프로그래밍
      • 파이썬은 웹 프로그램을 만들기에 매우 적합한 도구
      • 파이썬으로 제작한 웹 사이트는 셀 수 없이 많을 정도
    • 인공지능과 머신러닝
      • 자연어 처리, 음성 인식, 이미지 인식과 같은 인공지능 기술 구현
      • 인공지능과 머신러닝 프로그래밍을 쉽게 할 수 있도록 scikit-learn, TensorFlow, PyTorch, Keras 등과 같은 다양한 라이브러리 제공
    • 수치 연산 프로그래밍
      • C로 작성된 넘파이(Numpy) 수치 연산 모듈을 통해 빠른 수치 연산 가능
    • 데이터 분석
      • NumPy, Pandas, Matplotlib 등의 라이브러리를 활용해 데이터 처리, 통계 분석, 시각화를 손쉽게 수행
      • 판다스가 등장한 이래 데이터 분석에 R보다 파이썬을 사용하는 사례 증가
    • 데이터베이스 프로그래밍
      • Sybase, Infomix, Oracle, MySQL, PostgreSQL 등의 데이터베이스에 접근하기 위한 도구 제공
      • 자료를 변형 없이 그대로 파일에 저장하고 불러오는 파이썬 모듈 피클(pickle)
    • 시스템 유틸리티 제작하기
      • 운영체제(윈도우, 리눅스 등)의 시스템 명령어를 사용하는 도구를 통한 시스템 유틸리티 제작
    • GUI(Graphic User Interface) 프로그래밍
      • 화면에 윈도우 창을 만들고 프로그램을 동작시킬 수 있는 메뉴나 버튼, 그림 등을 추가하는 것
      • GUI 프로그래밍을 위한 도구들을 갖추고 있어, GUI 프로그램을 만들기 쉬움 (예 - Tkinter(티케이인터))
    • C/C++와 결합하기
      • C나 C++로 만든 프로그램을 파이썬에서, 파이썬으로 만든 프로그램을 C나 C++에서 사용 가능
    • 사물 인터넷
      • 라즈베리파이를 제어하며 사물 인터넷 구현
    • 시스템과 밀접한 프로그래밍 영역
      • 운영체제, 엄청난 횟수의 반복과 연산이 필요한 프로그램 등 매우 빠른 속도를 요구하거나 하드웨어를 직접 건드려야 하는 프로그램에는 적합하지 않음

파이썬 둘러보기

  • 파이썬 기초 실습 준비하기
    • 수식 입력
      • 입력에 따른 결괏값이 바로 출력됨
      >>> 1 + 1  # 수식 입력
      2  # 결과값 바로 출력
      
    • 대화형 인터프리터 종료
      1. Ctrl + Z → Enter
      2. 내장함수 quit()이나 exit()를 사용
      3. sys 모듈 사용
      import sys
      sys.exit()
      
  • 파이썬 기초 문법 따라 해 보기
    • 사칙 연산
      • 덧셈(+), 뺄셈(-), 나눗셈(/), 곱셈(*)
      >>> 1 + 2
      3
      >>> 3 / 2.4
      1.25
      >>> 3 * 9
      27
      
    • 변수에 숫자 대입하고 계산하기
    >>> a = 1
    >>> b = 2
    >>> a + b
    3
    
    • 변수에 문자 대입하고 출력하기
    >>> a = "Pyton"
    >>> print(a)
    Python
    >>> a
    'Python'
    
    • 조건문 if
    >>> a = 3
    >>> if a > 1:
    ...    print("a는 1보다 큽니다.")  # 들여쓰기: [SPACE] 4칸
    ...    
    a는 1보다 큽니다.
    
    • 반복문 for
      • 대괄호([ ]) 사이에 있는 값을 하나씩 출력
      >>> for a in [1, 2, 3]:
      ...    print(a)
      ...
      1
      2
      3
      
    • 반복문 while
      • 일정한 조건이 만족하는 동안 문장을 반복 수행
      >>> i = 0
      >>> while i < 3:
      ...    i = i + 1
      ...    print(i)
      ...
      1
      2
      3
      
    • 함수
      • 파이썬에서 함수를 정의할 때 사용하는 예약어 def
        • ※ 예약어: 프로그래밍 언어에서 이미 문법적인 용도로 사용하고 있는 단어
      • return은 함수에서 값을 변환할 때 사용
      >>> def add(a, b):
      ...    return a + b
      ...
      >>> add(3, 4)
      7
      

파이썬과 에디터

IDLE 에디터로 파이썬 프로그램 작성하기

  • 파이썬 IDLE 실행
    • IDLE(Integrated Development and Learning Environment)
      • 파이썬 프로그램 작성을 도와주는 통합 개발 환경
    • ※ IDLE 셸(Shell) 창
      • : IDLE 에디터로 작성한 프로그램의 실행 결과를 표시하는 용도로만 사용
  1. 파이썬 프로그램 작성
# hello.py
print("Hello World")
  1. 작성한 프로그램 실행(F5)
  2. 파일 저장
  1. 실행 결과
  • IDLE 셸 창에 표시됨

에디터

728x90

'03. Python' 카테고리의 다른 글

04. 흐름 제어  (2) 2024.10.27
03. 시퀀스 자료형  (0) 2024.10.27
02. 변수와 자료형  (3) 2024.10.27