본문 바로가기

Programming/#Python

[Python] 파이썬 기초 (실습 결과 추가)

본 포스팅은 책 「두근두근 파이썬」을 참고하여 공부한 내용의 요약본입니다. 

 

 

 

 


 

0. 들어가며

컴퓨터에 일을 시키려면 인간의 자세한 명령(instruction)을 주어야 한다. 이러한 명령들을 적어놓은 문서를 흔히 '프로그램(program)'이라고 부른다. 한편, 이러한 프로그램은 '프로그래밍 언어'로 작성되는데 이를 짜는 사람을 '프로그래머'라고 부른다. 이때, 프로그래밍 언어는 사람의 언어를 이해할 수 없는 컴퓨터가 알아들을 수 있는 유일한 언어라는 점에서 유의미한데, 가령 우리는 컴퓨터를 제어하거나, 문제 해결을 위한 프로그램을 작성할 때 이를 사용할 수 있다. 최근에는 학생들의 창의성과 논리적 문제 해결 능력 배양을 위해 초등학교 정규 과정으로 프로그래밍 교육을 이수한다는 소식을 심심치 않게 들을 수 있다.

 

 

 

 

 

이러한 프로그래밍 언어의 종류로는 파이썬, 자바, C, BASIC 등 여러 가지가 있는데, 이 책에서는 파이썬을 사용한다.

 

1. 파이썬 소개

인터프리터 방식 vs 컴파일 방식

파이썬은 1989년 귀도 반 로썸에 의해 개발된 언어로 인터프리터 방식의 객체지향 프로그래밍 언어 (대화형 언어)이다. 프로그램 명령어를 번역하는 방식으로는 '컴파일 방식'과 '인터프리터 방식'이 대표적이다. 그 중 컴파일 방식은 프로그램 언어를 기계어로 한 차례 번역한 후 이 기계어를 실행하는 방식이며, 'C', 'C++', '파스칼' 등의 언어에서 채택하고 있다.

 

 

소스코드를 번역하여 기계어 명령어를 생성한 후 이를 실행해 결과를 출력

 

 

 

반면, 인터프리터 방식은 프로그램 명령어를 한 번에 한 줄씩 읽어 번역한 후 바로 실행하는 방식이다. 대표적으로 'Python', 'Basic' 등의 언어가 이 방식을 채택한다. 

 

 

인터프리터는 소스 코드를 한 줄씩 읽어 번역 후 이를 실행하는 방식으로 동작

 

 

이 둘을 비교하자면, 인터프리터 방식은 컴파일 단계를 거칠 필요가 없지만 실행 시간이 좀 걸린다는 것이고, 컴파일 방식은 원시 프로그램의 크기가 매우 크지 않은 이상 일반적으로 속도가 더 빠르다는 특징이 있다. (원 프로그램이 크면 시간이 상당히 오래 걸림)

 

파이썬의 특징

파이썬은 인터프리터 방식을 사용하기 때문에 결과를 즉시 볼 수 있어 초보자에게 좋은 언어이다. 뿐만 아니라, 문법이 쉬워 코드를 보면 직관적으로 의미를 해석할 수 있는 부분이 많다. 

if "사과" in ["딸기", "바나나", "포도", "사과"]:
	print("사과가 있습니다.")

 

더불어, 파이썬은 다양한 플랫폼에서 지원되고 오픈소스 라이브러리가 풍부하며 애니메이션이나 그래픽을 쉽게 사용할 수 있다는 점에서 확장성이 있는 언어라고 볼 수 있다. 이러한 파이썬의 특징으로 인해 프로그래머들 사이에서 인기가 많은데, TIOBE 지수 (프로그래밍 언어의 인기도를 매기는 지수)에 따르면 Python은 3위에 위치한다. 

 

 

TIOBE 지수

 

 

 

파이썬이 제공하는 라이브러리로는 데이터 시각화에 특화된 PlotLib, 게임 개발에 특화된 Pygame, 분자생물학에 특화된 Biopython, 자연어 처리에 특화된 nltk 등 다양하다. 

 

 

파이썬 제공 라이브러리

 

 

 

2. 파이썬 설치와 사용

파이썬 설치

파이썬은 아래의 링크를 통해 다운로드 홈페이지에 접속하면 각자의 운영체제 (macOS, Window, Lunux 등)에 맞는 버전을 선택하여 다운로드 받을 수 있다. 자세한 설치 방법은 구글링을 통해 쉽게 접근할 수 있으므로 여기서 자세히 다루진 않겠다. 

http://www.python.org/

Welcome to Python.org

The official home of the Python Programming Language

www.python.org

 

파이썬 대화창 사용하기

파이썬 설치 후 Python 3.x (버전은 상이할 수 있음) 을 눌러 실행하면, 사용자 입력을 받을 수 있는 프롬프트(prompt)에 명령어를 입력할 수 있다. 예를 들어 다음과 같이 대화창의 프롬프트 (>>>)print("Hello Python")을 입력 시 Hello Python이 출력된다. 

 

 

 

 

 

만일 잘못된 명령을 입력하여 오류가 발생하였다면, 해당 내용도 함께 출력해준다. 파이썬의 print 문에서는 따옴표의 종류를 일치시켜줘야 하기 때문에 다음의 명령은 오류 (Syntax Error)를 출력한다. 특히 파이썬은 문법 체계가 간단한 대신 들여쓰기 및 대소문자 등에 민감하기 때문에 주의해야 한다. 대화창을 종료하려면 Ctrl+Z 또는 exit() 함수를 호출하면 된다. 

 

 

 

 

 

IDLE

Integrated Development Enviornment for Python의 약자로, 파이썬 개발을 위한 '통합 개발환경'이다. 이 환경 내에서는 코딩, 실행 뿐 아니라 디버깅 및 다양한 설정이 가능해 편리하다. 다음의 대화창은 파이썬 대화식 쉘 (Python Shell)이라고 하며 통합 개발환경을 제공한다. 

 

 

윈도우(Window) 운영체제에서의 명령 처리기와 파이썬 대화형 모드

 

 

 

3. 파이썬 2, 3 차이

파이썬 2는 2020년 이후 지원되지 않는다. 따라서 새롭게 파이썬을 배우는 비기너라면 파이썬 3로 시작하기를 권장한다. 파이썬 2에서 3로 변경되면서 달라진 점은 다음과 같다.

  • print 에서 print() 함수로 변화
  • 표준 라이브러리의 재배치
  • 스트링 포매팅 기능이 다양해짐
  • 딕셔너리, 문자형에 구성요소 변경
  • 함수 표기법의 변화
  • 유니코드 지원

 

4. Hello World 출력하기

이번에는 문자열 혹인 수치 값을 화면상에 출력하는 기능의 함수, print()에 대해 알아보자. 

 

 

파이썬 출력함수 print() 함수의 문법

 

 

print("Hello World")와 같은 명령을 '표현문 (expression statement)" 또는 '문장 (statement)'라고 부른다. 다음 실습을 통해 대화창에서 print() 함수를 활용하여 여러 가지 결과를 출력하는 예제를 학습해보겠다.

 

1장 실습
# Hello World 출력하기
>>> print("Hello World!")
Hello World!

# 세 줄에 걸쳐 반복하기
>>> print("Hello World!")
print("Hello World!")
print("Hello World!")

Hello World!
Hello World!
Hello World!

# 문자열과 숫자 출력하기
>>> print("Hello", "World!")
Hello World!

>>> print('Hello' + 'World!')
HelloWorld! # '+' 기호로 연결 시 공백 삽입되지 않음

>>> print(100)
100

>>> print(2 + 4)
6

# 간단한 숫자 연산하기
>>> 10 + 20 * 30
610

# 변수를 선언하여 연산하기
>>> x = 100
>>> y = 200
>>> x + y # 변수에 저장된 값을 불러와 연산
300

>>> x - y
-100

>>> x * y 
20000

>>> x / y
0.5

>>> x ** 2
10000

>>> n = 5
>>> n ** 2 # '**'는 제곱의 연산
25

다음 게시글 

출력함수와 변수

2021/01/07 - [Programming/#Python] - [Python] 두근두근 파이썬 Chapter 2 변수와 연산자 (실습 결과 포함)

[Python] 두근두근 파이썬 Chapter 2 변수와 연산자 (실습 결과 포함)

본 포스팅은 책 「두근두근 파이썬」을 참고하여 공부한 내용의 정리본입니다. 이전 게시글 두근두근 파이썬 Chapter 1 2021/01/06 - [Programming/#Python] - [Python] 두근두근 파이썬 Chapter 1 (실습 결과..

jiwon-lee-it.tistory.com


 

 

 

I'm a Senior Student in Data Science ! 

데이터 사이언스를 공부하고 있는 4학년 학부생의 TIL 블로그입니다. 게시글이 도움 되셨다면 구독과 좋아요 :)