1. 컴퓨터와 프로그래밍의 이해
-
컴퓨터의 특징
- 대단히 유연한 기계로, 리포트 작성부터 게임, 복잡한 계산까지 다양한 작업이 가능하다.
-
프로그램(Program)
- 컴퓨터가 수행할 명령어를 적어놓은 문서(작업 지시서)
-
프로그래밍의 필요성
- 단순 반복 작업은 컴퓨터가 인간보다 월등히 잘 수행한다.
- 인공지능, 로봇 프로세스 자동화(RPA), 데이터 분석 등 모든 분야(이공계 및 인문사회계)에서 필수적인 기술이 되었다.
-
프로그래밍 언어
- 기계어(0과 1)만 이해하는 컴퓨터와 인간 사이를 소통하게 해주는 언어(예: 파이썬, 자바, C 등)
- 컴파일러/인터프리터: 작성된 프로그래밍 언어를 기계어로 통역해 주는 소프트웨어
2. Python 소개
-
역사: 1991년 귀도 반 로섬(Guido van Rossum)이 개발
-
특징
- 생산성: 문법이 간결하고 쉬워 프로그램을 빠르게 작성할 수 있다.
- 인터프리터 언어: 코드를 한 줄씩 실행하고 결과를 즉시 볼 수 있어 초보자에게 적합하다.
- 풍부한 라이브러리: 인공지능(Keras), 데이터 과학(Matplotlib, Pandas), 웹 크롤링(Requests) 등 강력한 기능을 쉽게 가져다 쓸 수 있다.
3. 개발 환경 구축
-
아나콘다(Anaconda)
- 파이썬과 인기 있는 라이브러리들이 거의 모두 포함된 배포판으로, 설치가 쉽고 관리가 편하다.
-
주요 도구
- Spyder: 파이썬으로 작성된 개발 도구(IDE)로, 코드 작성, 변수 확인, 결과 출력을 한 화면에서 할 수 있다.
- Jupyter Notebook: 웹 브라우저 상에서 코드 실행과 설명(문서)을 함께 작성할 수 있는 도구
- Google Colab: 클라우드 기반의 주피터 노트북 환경으로 별도 설치 없이 사용 가능하다.
4. 파이썬 기초 문법 및 실행 모드
-
기본 연산
- 사칙연산(
+,-,*,/) 및 거듭제곱(**) 지원 import math를 통해 삼각함수, 제곱근, 로그함수 등 사용 가능
- 사칙연산(
-
문자열(String)
- 큰따옴표(
")나 작은따옴표(')로 감싸서 표현 - 문자열 덧셈(연결)과 곱셈(반복)이 가능 (예:
"Hello" * 10)
- 큰따옴표(
-
print()함수- 화면에 텍스트나 계산 결과를 출력하는 함수
-
실행 모드
- 대화형 모드(Interactive mode): 콘솔에서 한 줄씩 입력하여 즉시 결과를 확인 (간단한 테스트용)
- 스크립트 모드(Script mode): 파일(
.py)에 코드를 저장해 두고 한 번에 실행 (복잡한 프로그램용)
5. 실습 예제 및 활용
-
오류 처리
- 따옴표 누락 등 문법 오류(SyntaxError) 발생 시 원인을 찾아 수정하는 디버깅 과정 학습
-
터틀 그래픽(Turtle Graphics)
- 거북이 모양의 커서를 이동시켜 그림을 그리는 모듈
forward(),left(),pencolor()등의 명령어로 삼각형, 회전하는 다각형 패턴 등을 그릴 수 있음
-
텍스트 데이터 분석
- 외부 텍스트 파일(예: 모비딕 소설)을 읽어와서
collections.Counter를 이용해 단어의 출현 빈도수를 분석하는 예제
- 외부 텍스트 파일(예: 모비딕 소설)을 읽어와서