스터디/파이썬 스터디 강의자료

[1팀/허서원] 1차시 파이썬 스터디 - 입출력

허서원 2023. 3. 9. 23:42

참고자료 : 데이터 과학을 위한 파이썬 프로그래밍 (최성철)

1차시_입출력_강의안.pdf
1.64MB
1차시_입출력_과제.pdf
0.18MB

 

1차시_입출력_과제답안.pdf
0.21MB

프로그래밍 언어와 파이썬


학습 목표

  • 프로그래밍 언어의 개념과 필요성에 대해 이해한다.
  • 파이썬의 특징과 필요성에 대해 학습한다.
  • 파이썬 코드 편집기인 Pycharm을 설치한다.
  • Pycharm을 이용하여 간단한 코드를 작성해본다.

01 프로그래밍 언어의 이해

1. 프로그래밍이란?

  • 스마트폰 메신저 → 프로그램
    💡 프로그램(program)이란 어떤 문제를 해결하기 위해 컴퓨터가 실행해야 하는 명령어의 집합체
    ex. 카카오톡
    목적 : 다른 사람과의 대화
    타인에게 텍스트를 보낼 때, [전송]버튼 혹은 사진 첨부를 원할 때는 [사진] 버튼을 누름
    [전송] → 내가 입력한 텍스트를 상대방에게 전달하라는 명령어
    [사진] → 내 기기에 저장된 사진 중 하나를 선택하라는 명령어
    이런 명령어가 모여 프로그램이 된다.
  • 프로그래밍(programming)이란?
    : 프로그래밍 언어를 사용하여 프로그램을 개발하는 것
  • 프로그래밍 언어(programmin language)란?
    : 프로그램을 개발할 때 사용하는 도구.
    → 인간이 원하는 것을 컴퓨터로 실행시키기 위해 사용하는, 컴퓨터가 이해할 수 있는 언어
    • 컴퓨터가 이해할 수 있는 언어 → 코드(code)
    • 코드를 작성하는 행위 → 코딩

2. 프로그래밍 언어를 배우는 이유
→ 하나의 도구를 익히는 과정이기도 하지만, 컴퓨터가 문제를 어떻게 해결하는지 논리적인 과정을 절차적으로 학습한다는 과정에서 의미있다.

02 파이썬 소개

1 파이썬의 등장

  • python

네덜란드의 개발자 귀도 반 로섬(Guido van rossum)이 1991년 개발한 언어로, 처음에는 C언어 기반으로 개발되었으며 이후 다양한 기능이 추가되었다.

2. 파이썬의 특징

  • 플랫폼 독립적인 언어
    플랫폼(platform)? 흔히 말하는 운영체제(Operating System, OS)를 뜻한다.
    → 윈도우(windows), 맥 OS(Mac os), 리눅스(Linux)
    • ‘독립적’이라는 표현은 ‘관계없는’이라는 뜻으로,
      → 플랫폼 독립적인 언어란 어떤 운영체제든 상관없이 사용할 수 있는 언어라는 의미
  • 인터프리터 언어
    • 프로그래밍 언어의 소스코드가 컴퓨터에 의해 해석되는 과정
      • 소스코드 → 프로그래머가 작성한 프로그래밍 언어의 텍스트 파일
        이런 소스코드가 컴퓨터에서 실행되기 위해 인터프리터 또는 컴파일러에 의해 해석되고, 이 해석된 결과가 운영체제에 맞춰 기계어로 변환되어 컴퓨터의 하드웨어인 메모리와 CPU에 저장되어 실행된다.
    • 인터프리터 (Interpreter)는 소스코드의 해석을 위해 사용되는 프로그램의 일종
      • 컴파일러 언어와 달리 소스코드 자체가 바로 실행되는 특징이 있다.
        → 속도는 느리지만 굉장히 간편하게 사용할 수 있다.
    🙌 컴파일러와 인터프리터
    구분 컴파일러 인터프리터
    → ‘번역’과 ‘통역’의 차이
    작동 방식 소스코드 → 기계어로 번역하고, 해당 플랫폼에 최적화된 상태로 프로그램을 실행 별도의 과정 없이 소스코드를 실행 시점에 해석하여 컴퓨터가 바로 처리
    장점 실행 속도가 빠름 간단히 작성되고 메모리가 적게 필요
    단점 한 번에 많은 메모리가 필요 실행 속도가 느림
    주요 언어 C, 자바(JAVA), C++ 파이썬, 스칼라
  • 객체 지향 언어 (object oriented language)
    → 객체 지향 프로그래밍 환경에서 사용되는 프로그래밍 언어를 말한다.
    해당 프로그램이 해결해야 할 문제의 구성요소를 요소별로 정리한 다음 각 요소의 기능과 정보를 프로그래밍한 다음 요소들을 결합하는 방식으로 프로그램을 작성
    • 객체 지향 언어의 가장 큰 특징, 재사용성!!
    ↔ 절차적 프로그래밍 언어 (procedure programming)
    : 소스코드를 작성할 때 실행 순서대로 하나부터 열까지 프로그래밍
  • 동적 타이핑 언어(dynamic typing language)
    → 프로그램의 실행 시점에서 각 프로그램 변수의 타입을 결정하는 언어

    3. 파이썬을 배우는 이유
    → 쉽고 간단하면서 다양한 라이브러리를 제공한다는 장점
    • 쉽고 간단한 프로그래밍 언어
      인간 지향적이기 때문에 프로그래밍을 처음 배우는 사람도 코드를 쉽게 이해 할 수 있다.
    • 다양한 라이브러리 제공
      • 다양한 라이브러리를 제공하여 활용 범위가 넓다.
      최근 인공지능 기술에 대한 관심이 높아지면서 대표적인 인공지능 개발을 위한 언어로 인정인공지능이나 데이터 분석 프로젝트, 웹 프로그래밍 개발, 서버 관리용 스크립트 언어 등 매우 다양하게 활용
      • 언어 자체가 쉽기도 하지만 개발자들이 만들어 놓은 많은 모듈과 패키지를 쉽게 사용
      현재 파이썬 관련 라이브러리는 지속적으로 늘어나고 있고, 이러한 오픈소스들의 결과물을이 파이썬 활용의 저변을 넓히고 있음
    • 대중적인 프로그래밍 언어
      인공지능과 데이터 분석, 과학 계산 분야에서 활발히 사용되고 있다.
      대표적으로 바둑기사 이세돌 9단에게 승리한 알파고를 비롯해 태양을 흑점을 발견하는 실험, 아인슈타인의 중력파를 증명하는 실험 등 다양한 방면에서 파이썬 코드가 사용되었다.또한, 프로그래밍계의 지식인이라고 할 수 있는 Stack Overflow의 조사 결과, 현재 가장 많은 질의응답을 받는 프로그래밍 언어는 파이썬이다!

03 파이썬 개발 환경과 설치

  • 파이썬 개발 환경 설정
    프로그래밍 개발 환경
    : 프로그래밍할 수 있는 환경
    파이썬으로 프로그래밍 하기 위해서는 파이썬 인터프리터와 코드 편집기 프로그램이 필요
    • 운영체제 선정
      국내 컴퓨터 사용자들은 대부분 운영체제로 윈도우를 사용하지만, 전세계 프로그래머들은 대부분 유닉스를 기반으로 한 리눅스와 맥 OS를 프로그램 개발에 많이 활용한다.
      윈도우 국내 사용자가 사용하기에 가장 쉬운 운영체제, 프로그래밍을 시작하는 사람에게 상당히 좋은 선택 다른 사용자가 개발한 다양한 모듈을 설치하기 어렵고, 참고자료가 부족
      리눅스 모듈 설치가 굉장히 쉽고, 인터넷에서 다양한 레퍼런스를 검색하기 쉬움 처음 사용하는 사용자가 다루기에는 운영체제 자체가 매우 어려움
      맥 OS 기본적으로 리눅스의 장점이 있으면서 윈도우처럼 안정적임 다른 운영체제보다 상대적으로 가격이 비쌈
    • 파이썬 인터프리터 선정
      파이썬 인터프리터는 파이썬으로 작성된 소스코드의 실행 프로그램
      주요 파이썬 인터프리터로는 Python, Anaconda, Canopy가 있다.종류 설명
      Python 일반적인 파이썬으로 기본적인 모듈을 포함한다.
      Anaconda 다양한 과학 계산용 모듈을 묶어 패키지로 제공한다.
      Canopy 다양한 과학 계산용 모듈을 묶어 패키지로 제공한다. (최근에는 사용하지 않음)
    • 코드 편집기 선정
      텍스트 문서
      : 워드, 한글과 같은 워드프로세서에서 만든 글자로 이루어진 일종의 문서를 의미
      • 프로그램의 소스코드도 넓은 의미로 보면 하나의 텍스트 문서
        → 편집할 프로그램(코드 편집기)이 필요
      코드 편집기는 두 가지 형태로 나눌 수 있다.
      • 단순히 문서를 편집할 때 사용하는 텍스트 에디터
      • 프로그램의 개발부터 배포까지 전 과정을 지원하는 통합개발환경(Integrated Development Enviroment. IDE)

      메모장 윈도우의 기본 문서 편집 도구
      VI editor 리눅스의 기본 문서 편집 도구
      Sublime Text 프로그래밍에 특화된 문서 편집 도구
      Atom 프로그래밍에 특화된 문서 편집 도구 (Github에서 개발)
      PyCharm 다양한 기능을 갖춘 파이썬 전용 개발 도구 (IDE)
      Visual Studio Code 마이크로소프트에서 제공하는 코드 전용 에디터
  • 파이썬 인터프리터의 설치 : Python
    Welcome to Python.org
    • 설정 - 시스템 - 정보
  • 파이썬 셸에서 코드 작성
    1. 윈도우 키 + R
    2. 실행 창에서 ‘cmd’를 입력한 후 enter
    3. cmd 창에서 ‘python’ 입력
    → 명령 프롬프트 검색
  • 파이썬 코드 편집기의 설치 : PyCharm
    PyCharm 다운로드: JetBrains가 만든 전문 개발자용 Python IDE
  • PyCharm에서 코드 작성하기

 

PyCharm 다운로드: JetBrains가 만든 전문 개발자용 Python IDE

 

www.jetbrains.com

 

 

Welcome to Python.org

The official home of the Python Programming Language

www.python.org

 

++

컴파일러와 인터프리터 보충 자료

컴파일러vs인터프리터.pdf
0.50MB