- 파이썬 프로그래밍 언어의 특징 이해 - Google Colab 환경 설정과 사용법 익히기 - 파이썬 기초 문법 학습 (변수, 자료형, 기본 연산 등)
" 🐍 뱀과는 무관한 프로그래밍 언어"
1. 알아보기 : 파이썬 소개
1.1 파이썬 (Python) 이란?
위키피디아 파이썬(Python)은 1991년 네덜란드의 소프트웨어 엔지니어인 귀도 반 로섬이 발표한 고급 프로그래밍 언어로, 인터프리터를 사용하는 객체지향 언어이자 플랫폼에 독립적인 동적 타이핑(dynamically typed) 대화형 언어입니다.
파이썬(Python) 이름에 담긴 의미
한때 한 소프트웨어 개발자가 지루한 크리스마스 휴가를 보내고 있었습니다. 그는 자신이 필요로 하는 작업을 처리할 수 있는 간결하고 재미있는 프로그래밍 언어를 만들고 싶었습니다. 이 개발자의 이름은 귀도 반 로섬(Guido van Rossum)이었죠.
"코딩이 꼭 이렇게 재미없고 힘들기만 해야 할까? 마치 코미디 프로그램을 보듯이 즐겁게 코드를 작성할 수는 없을까?"
그는 새 언어를 만들기로 결심하고 프로젝트의 이름을 고민했습니다. 그때 그의 머릿속을 스친 건 다름 아닌 영국의 유명한 코미디 프로그램인 "Monty Python's Flying Circus"였습니다. 그는 이 쇼를 너무 좋아해서, 새로운 언어의 이름을 파이썬(Python)이라고 지었습니다. 그래서 파이썬은 사실 뱀에서 유래한 것이 아니라, 코미디 쇼에서 따온 이름이죠.
파이썬의 이름은 단순히 창시자의 유머 감각을 반영한 것이지만, 귀도의 철학을 그대로 담았습니다. "복잡한 것은 단순하게, 단순한 것은 더 간결하게"라는 원칙이죠. 마치 코미디 쇼처럼, 쉽고 명료한 흐름을 유지하면서도 강력한 기능을 제공하는 언어입니다.
"Hello, World!"도 간단하게
당시 많은 프로그래밍 언어에서 간단한 메시지 하나를 출력하기 위해 복잡한 구문을 사용해야 했습니다. 하지만 파이썬에서는 달랐습니다.
print("Hello, World!")
그저 한 줄의 코드로 세상을 향해 인사를 건넬 수 있었습니다. 이것은 파이썬이 가진 간결함의 시작에 불과했습니다.
"모두를 위한 언어"
파이썬의 또 다른 목표는 모두가 쉽게 배울 수 있는 언어가 되는 것이었습니다. 그래서 파이썬은 복잡한 선언이나 번거로운 설정을 요구하지 않았습니다. 그 대신, 자연스럽고 직관적인 문법으로 구성되어 누구나 쉽게 이해할 수 있게 만들었습니다.
예를 들어, 파이썬에서는 데이터의 리스트를 다루는 것도 간단합니다.
fruits = ["사과", "바나나", "체리"]
for fruit in fruits:
print(f"맛있는 {fruit}")
이처럼 파이썬은 초보자도 쉽고 직관적으로 사용할 수 있도록 설계되었습니다.
" 모두가 함께 만들어가는 언어 "
한때, 프로그래밍 언어는 마치 비밀의 문 같았습니다. "이 언어를 쓰려면 돈을 내야 합니다!", "코드 내부를 보려면 허락받아야 합니다!"라는 식으로, 누구나 쉽게 접근할 수 있는 언어는 많지 않았습니다. 하지만 파이썬의 창시자 귀도 반 로섬은 완전히 다른 길을 선택했습니다.
"프로그래밍 언어는 한 사람의 것이 아니라, 모두의 것이 되어야 한다!"
파이썬은 오픈 소스(Open Source)로 만들어졌습니다. 즉, 누구나 파이썬의 소스 코드를 열어볼 수 있고, 수정하거나 확장할 수도 있습니다. 그것도 무료로 말이죠!
여러분이 새로운 기능을 떠올라 파이썬 커뮤니티에 제안한다면, 언젠가는 파이썬의 공식 기능으로 추가될 수도 있습니다. 또한,전 세계 개발자들이 파이썬 커뮤니티에서 서로의 문제를 도와 버그를 찾고, 수정하고, 더 나은 언어로 만들어 갑니다.학생, 취미 개발자, 기업 모두 제한 없이 사용할 수 있죠. 게다가 인터넷에 엄청난 양의 무료 학습 자료도 있습니다.파이썬이 오픈 소스라는 것은 이런 멋진 점들을 가능하게 합니다.
이제 파이이썬은 단지 귀도 반 로섬의 작품이 아닙니다. 오픈 소스 덕분에 파이썬은 "혼자만의 언어"가 아니라 전 세계의 개발자들이 함께 키워가는 언어가 되었습니다.
"파이썬, 세상을 바꾸다."
시간이 흐르면서, 파이썬은 단순히 재미있는 언어를 넘어 실용적이고 강력한 도구로 자리 잡았습니다. 오늘날 파이썬은 데이터 분석, 인공지능, 웹 개발, 게임 제작 등 거의 모든 분야에서 사용됩니다.
넷플릭스는 사용자 맞춤 영화 추천 시스템에 파이썬을 사용합니다.
스페이스X는 로켓 발사 데이터를 분석하는 데 파이썬을 활용합니다.
유튜브의 많은 부분도 파이썬 코드로 작동합니다.
파이썬은 단순히 프로그래밍 언어 그 이상이 되었습니다. 세상 곳곳에서 문제를 해결하고, 창의성을 발휘하며, 재미를 더하는 도구로 자리 잡은 것입니다.
이제 여러분도 파이썬이라는 멋진 도구를 통해, 세상을 조금 더 재미있고 창의적으로 바꿔볼 차례입니다!
1.2 파이썬의 특징
쉬운 문법: 파이썬은 사람이 읽고 이해하기 쉬운 문법으로 설계되었다. 다른 프로그래밍 언어에 비해 불필요한 기호나 복잡한 선언이 없기 때문에 초보자도 빠르게 배울 수 있다. 코드가 마치 영어 문장처럼 보이기 때문에 작성하기도, 읽기도 쉽다. 예를 들어, 두 숫자를 더하고 결과를 출력하는 코드도 파이썬에서는 이렇게 간단하다:
a = 5
b = 3
print(a + b)
다양한 라이브러리: 파이썬은 다양한 라이브러리와 프레임워크를 제공하며, 이를 통해 여러 분야에서 폭넓게 활용될 수 있다. 파이썬의 표준 라이브러리뿐만 아니라, 커뮤니티에서 제공하는 외부 라이브러리도 풍부하다.
데이터 분석: pandas, numpy 등 데이터를 처리하고 분석하는 데 유용한 라이브러리.
머신러닝: scikit-learn, tensorflow, keras와 같은 라이브러리는 AI 모델 개발을 간편하게 만들어 준다.
웹 개발: flask, django와 같은 프레임워크는 강력하면서도 간단하게 웹 애플리케이션을 개발할 수 있도록 돕는다.
그래프 및 시각화: matplotlib, seaborn을 사용해 데이터를 시각적으로 표현할 수 있다.
자동화 및 스크립팅: os, shutil 등으로 파일 관리, 시스템 작업 자동화를 쉽게 할 수 있다.
높은 생산성: 파이썬은 간결한 문법과 다양한 내장 기능 덕분에 코드 작성 속도가 매우 빠르다.
플랫폼 독립적: 파이썬은 운영체제에 독립적인 언어이다. Windows, macOS, Linux 등 어떤 환경에서도 동일한 코드를 실행할 수 있다. 추가적인 컴파일 과정 없이, 파이썬 인터프리터만 설치하면 어떤 플랫폼에서든 코드를 실행할 수 있다. 예를 들어, Windows에서 작성한 코드는 macOS나 Linux에서도 수정 없이 실행된다.
인터프리터 언어 : 컴파일러 언어와 달리, 소스코드 자체가 바로 실행되는 특징이 있는 언어로 굉장히 간편하기 사용 할 수 있다.
객체 지향 프로그래밍(Object-Oriented Programming, OOP) : 객체 지향 프로그래밍은 데이터를 객체로 묶고, 그 객체가 동작하는 방식을 정의하여 현실 세계의 사물을 프로그래밍으로 모델링하는 기법이다. 파이썬에서는 모든 것이 객체로 간주되며, 이 객체 지향 설계를 통해 강력한 기능과 확장성을 제공한다.
✨ 여기서 잠깐!
컴파일러 언어와 인터프리터 언어 비교 (Compiler vs Interpreter Language)
사용 중인 운영체제(Windows, macOS, Linux)에 맞는 설치 파일을 다운로드한다.
Windows: 최신 버전을 클릭하여 .exe 파일 다운로드.
macOS: 설치 파일(.pkg)을 다운로드.
Step2: 파이썬 설치
다운로드한 설치 파일을 실행한다.
"Add Python to PATH" 옵션에 체크한다. (중요)
"Install Now" 버튼을 클릭하여 설치를 진행한다.
설치가 완료되면 "Close" 버튼을 클릭한다.
Step3: 설치 확인
명령 프롬프트(Command Prompt, Windows) 또는터미널(macOS/Linux)을 실행한다.
아래 명령어를 입력하여 설치된 파이썬 버전을 확인한다.
Step4. 파이썬 실행
터미널 또는 명령 프롬프트에서 python 명령어를 입력한다.
아래와 같은 >>> 프롬프트가 나타나면 파이썬이 실행된 것이다.
간단한 코드를 입력해 실행 결과를 확인 보자.
print("Hello, Python!")
2.2 파이썬 편집기 IDLE로 파이썬 첫 경험하기
파이썬을 설치하면 기본적으로 제공되는 편집기 **IDLE(Integrated Development and Learning Environment)**는 초보자가 파이썬을 배우기에 적합한 도구이다.
Interactive Interpreter: Python 코드를 실시간으로 실행할 수 있습니다. 변수, 함수, 클래스 등을 정의하고 테스트해 볼 수 있습니다. 계산 결과를 바로바로 확인할 수 있습니다.
Step1. IDLE 실행하기
Windows: 시작 메뉴 → Python 폴더 → IDLE 선택.
macOS/Linux: 설치 후 터미널에서 idle 명령어 입력.
왼쪽 하단의 윈도우에서 IDLE을 찾아 실해 해 봅시다.
검색창에서 IDLE열기
파이썬 셀 : 제일 먼저 보이는 화면이 파이썬 셀이라고 합니다. 파이썬 셀은 명령어 단위로 실행 할 수 있는 장소로 명령을 입력하면 실행 결과를 바로 확인 할 수 있습니다.
커서가 있는 프로프트(>>>)에 명령어를 입력하고 엔터를 누르면 결과가 즉신 출력됩니다.
IDLE 창의 >>> 로 시작하는 대화형 인터프리터 창
Step2. 간단한 예제 따라하기
1) Hello, Python!
'hello python' 문자을 입력해서 출력해 봅시다. 여기서 print() 함수는 출력함수입니다.
이처럼 명령어를 통해 컴퓨터에게 명령을 내렸고 , 파이썬 인터프리터는 그 명령을 해석하여 컴퓨터에 전달하였습니다. 그리고, 명령어를 전달받은 컴퓨터는 명령을 수행하고, 결과가 우리가 볼 수 있도록 출력하였습니다.
2) IDLE에서 간단한 계산을 수행 해 보자.
3) 변수와 출력
IDLE 사용 팁
탭 완성: 변수 이름이나 함수 이름을 일부만 입력하고 탭 키를 누르면 자동 완성된다.
코드 저장 및 실행: 대화형 모드 외에 스크립트 모드에서 코드를 작성하고 저장하여 실행할 수 있다.
에러 메시지 이해: 코드를 실행 중 에러가 발생하면 IDLE은 상세한 에러 메시지를 제공한다. 초보자가 에러를 학습하는 데 도움이 된다.
연습문제
괄호가 포함된 5 * (10+10)/2을 계산해 보자
자신의 이름을 10번 출력 해 보자
print(5*(10+10)/2)
print('배정수'* 100)
Step3. 스크립트 모드 메모장 사용하기
정말 이런 방식으로 복잡한 프로그램이 가능한 걸까? 인터프리터 언어라고 해서 정말 언어를 한줄 씩 실험하며 수행해야 하는 것은 아닙니다.파이썬의 기본프로그램인 IDLE에는 일반적은 텍스트 편집기인 스크립트 모드를 지원하고 있습니다. 스크립트 모드에서는 코드를 파일로 작성한 후 실행할 수 있다. 이는 대화형 모드와 달리, 긴 코드를 작성하거나 반복 실행이 필요한 경우에 유용하다.
새 스크립트 창 열기: IDLE 상단 메뉴에서 File → New File 선택. (Ctrl + N)
파일 저장 : 상단 메뉴에서 File → Save As 선택. (~ .py ) 저장 됨.
코드 실행 : F5 키를 누르거나 Run → Run Module을 선택.
불러오기 : 불러올때는 ㅡfile -open을 통해 불어 온다.(ctrl + o)
실행 결과(터미널 또는 대화형 창에서 확인)
예제 1: 간단한 계산기
새 편집 창에 아래 코드를 작성한다
파일 이름을 cal.py로 저장.
F5 키를 눌러 실행한다.
실행결과
3. 활용 해 보기
파이썬에 내장된 turtle 모듈을 가져옵니다. ( "파이썬에는 이미 많은 기능이 내장되어 있다.") * 코드를 몰라도 따라 해 보면서 프로그래밍 언어를 사용하는 느낌을 가져보자.
터틀 라이브러리를 import 해서 forward(100)을 실행 해 보자. 명령어가 즉각적인 결과를 만들어낸다는 점을 확인 할 수 있다.
import turtle
for i in range(4):
turtle.forward(100)
turtle.left(90)
* 다른 도형(삼각형, 오각형 등)을 그려보자. 도형의 내각의 합은 360도이다. 즉, 다각형의 각도는 360을 변의 수로 나눈 값으로 계산할 수 있다. 이를 활용하여 원하는 다각형을 쉽게 그릴 수 있다.
import turtle
for i in range(5):
turtle.forward(100)
turtle.left(360/5)
* 변의 개수를 변수를 사용하여 다각형을 그려 보자.
import turtle
angle = 5
for i in range(angle):
turtle.forward(100)
turtle.left(360/angle)
* 변의 개수를 입력받아 다양한 다각형을 그려 보자.
import turtle
angle = int(input('몇 각형을 그리고 싶나요?:'))
for i in range(angle):
turtle.forward(100)
turtle.left(360/angle)
input 함수를 사용해 몇 각형을 그리고 싶은지 사용자로부터 입력을 받는다.
정수로 변환하기 위해 int를 사용.
프로그램을 동적으로 실행된다.
여기서 잠깐!
아무리 복잡해 보이는 프로그램도 결국은 아래 네 가지 요소로 구성됩니다. - 순차 (Sequence) : 코드는 위에서 아래로, 순서대로 실행됩니다. - 반복 (Iteration) : 반복문(for,while)을 이용하여 효율적인 코드를 작성할 수 있다. 순차, 반복, 조건, 변수를 이용하여 분해 와 조립으로 구성 되어있다. - 조건 (Condition) : 프로그램은 조건에 따라 다른 명령을 실행할 수 있다 if, else를 사용해 조건에 맞는 동작을 구현합니다. - 변수 (Variable) : 변수는 데이터를 저장하고 관리하기 위해 사용됩니다.프로그램의 동작을 유연하게 만들어줍니다.
프로그램은 복잡한 문제를 작은 단위로 분해하고, 순차, 반복, 조건, 변수를 조합하여 해결한 단위들을 조립해 완성됩니다.
4. 따라하기 : 코랩 (Colab) 시작하기
4.1 Colab이란?
줄여서 'Colab'이라고도 하는 Colaboratory는 Google 리서치팀에서 개발한 제품입니다. Colab을 사용하면 누구나 브라우저를 통해 임의의 Python 코드를 작성하고 실행할 수 있습니다. Colab은 특히 머신러닝, 데이터 분석, 교육에 적합합니다. 더 기술적으로 설명하면 Colab은 호스팅된 Jupyter 노트북 서비스로, 설정하지 않고 사용 가능하며 GPU를 포함한 컴퓨팅 리소스를 무료로 사용할 수 있습니다.
일단 공짜다.
환경설정 및 사용이 쉽다.
클라우드 기반이다.- 언제 어디서든 접속가능하다.
웬만한 PC 보다 월등히 성능이 좋고 빠르다
공짜인 대신 세션 유지시간은 12시간이다.
저장 : .ipynb로 구글드라이브에 안전하게 보관
무료로 제공되는 환경은
노트북에 대한 최대 12시간 세션 유지
약 12 GB 메모리
약 100 GB 디스크
Jupyter와 Colab 사이에는 어떤 차이점이 있나요?
Jupyter는 Colab의 기반이 되어 주는 오픈소스 프로젝트입니다.
Colab을 사용하면 아무것도 다운로드하거나 설치, 실행하지 않고도 Jupyter 메모장을 다른 사람과 공유할 수 있습니다.