[안녕 프로그래밍 #3] 안녕 파이썬!

in #kr6 years ago (edited)



안녕하세요 전 프포자(프로그래밍 포기자) @stunstunstun 입니다. 지난 포스팅에서 HTML을 통해서 첫 프로그래밍을 경험해 보았습니다. 우리는 앞으로 인간의 언어와 가장 가깝다고 하는 파이썬(Python)을 통해 프로그래밍을 학습하게 됩니다. 왜 프로그래밍을 시작하시는 분들에게 파이썬을 추천할까요? 본문에서 경어는 생략합니다.


우리는 이미 키보드를 직접 타이핑하는 것을 시작으로 HTML 문서를 통해 처음으로 컴퓨터 화면에 영향을 미치는 극적인 순간을 경험하였다. 물론 프로그래밍을 한 번도 해본 경험이 없다면 말이다.

그 과정은 또 어떤가? 여전히 컴퓨터가 동작하는 원리가 추상적으로 느껴질 수 있는데 그렇다면 앞의 내용을 한 번 더 반복하고 다시 돌아오는 것도 좋은 방법이다. 반복하는 습관은 앞으로 당신에게 프로그래밍을 하면서 생기는 호기심을 해소하는 좋은 도구로 활용될 것이다.

이번 장에서는 본격적으로 프로그래밍 언어를 통해 표현하는 즐거움을 느꼈으면 한다. 우리는 그 시작으로 파이썬(Python)이라는 프로그래밍 언어를 만나본다.

파이썬

인류 언어의 기원은 명확하지 않지만 오랜 시간 동안 지역과 문화에 따라 다양한 언어로 나뉘고 발전해 왔다는 설이 있다. 놀랍게도 우리가 앞으로 다룰 프로그래밍 언어 역시 하나의 언어만이 존재하는 것이 아니라 프로그램을 동작하게 만드는 운영체제와 활용 목적에 따라 다양한 프로그래밍 언어가 탄생하고 발전해왔다.

그중 파이썬은 가장 인간의 언어와 유사한 문법으로 프로그래밍할 수 있고 우리가 지금 당장은 몰라도 되는 컴파일(Compile)이라는 과정도 거치지 않는다. 이는 파이썬은 그 외 프로그래밍 언어에 비해 비교적 배우기 쉽고 편하게 접근할 수 있다는 의미이다.

실제로 대학뿐만 아니라 온라인 공개 수업(MOOC)에서도 입문자를 위한 프로그래밍 언어로 파이썬을 가장 많이 활용하고 있다. 그뿐만 아니라 웹 프로그래밍, 그래픽, 데이터 분석, 머신러닝 등의 다양한 분야에서 Google, Facebook, Microsoft 등 글로벌 IT 기업이 파이썬을 활용하고 있다.

이러한 이유로 우리는 앞으로 파이썬을 활용해 프로그래밍이라는 새로운 방식으로 당신을 표현하는 연습을 할 것이다. 한국 속담으로 백문이 불여일견이라 했던가? 파이썬의 뒷 담화는 여기까지 하고 파이썬을 통해 컴퓨터와 대화를 시작해보자!

파이썬 인터프리터

어떤 형식으로든 자신의 생각을 표현하려면 그에 맞는 기술이 필요한 법이다. 우리에게 익숙한 메신저와 소셜 미디어 서비스 역시 인류의 삶을 개선하기 위한 상상으로 시작해 그에 맞는 기술로 표현된 하나의 작품이라고 볼 수도 있다. 우리는 그 주요 기술이 프로그래밍이라는 사실을 알게 되었으며 다양한 프로그래밍 언어 중 파이썬을 통해 우리의 상상을 표현하는 기술을 이제 막 시작하려는 순간이다.


image2.png


자! 상상하는 습관은 우리를 빠르게 행동할 수 있도록 도와준다. 마치 컴퓨터와 처음 인사하듯 당신의 컴퓨터 화면에 안녕이라는 텍스트가 출력되는 모습을 상상해보자. 우리가 앞으로 파이썬으로 작성한 결과물은 소스 코드(Source Code)라고 불린다. 화면에 안녕이라는 텍스트를 출력하는 파이썬의 소스 코드는 아래와 같다. 지금은 아래 소스 코드의 구체적인 의미는 몰라도 되니 안심하자.

print('안녕')


우리는 여기서 첫 문제에 직면하게 된다. 파이썬으로 작성된 소스 코드는 어떻게 실행되는가와 어디에 작성되는지에 대한 호기심 말이다. 지금부터는 다소 익숙하지 않은 이야기를 할 텐데 내용인즉 이렇다. 우리는 이미 앞 장에서 컴퓨터는 내부적으로 전기 신호의 유무에 따라 1과 0으로 이루어진 이진수만을 이해한다고 결론을 내렸는데 이 사실로 유추한 결과 파이썬을 통해 작성한 소스 코드만으로는 컴퓨터와 대화하는 것은 불가능해 보인다. 우리에게 익숙한 예를 들어보자. A라는 사람은 우리말인 한국어만 가능하고 B라는 사람은 한국어가 불가능함과 동시에 영어는 가능하다고 할 때 A와 B가 대화가 불가능한 문제를 어떻게 해결하면 좋을까?

image3.png

이때 한국어와 영어가 모두 가능한 C라는 사람이 있다고 가정해보자.

image4.png

이와 같이 C라는 통역사(Interpreter)가 등장함으로써 A와 B는 서로의 언어를 모름에도 불구하고 대화가 가능하게 된다. 앞으로 우리가 파이썬으로 작성하게 되는 소스 코드는 다음과 같은 원리로 실행된다. 아래와 같이 파이썬으로 작성한 소스 코드만으로는 컴퓨터와 대화하는 것은 불가능하다.

!image5.png

아래의 파이썬 인터프리터(Python Interpreter)는 위에서 살펴본 한국어와 영어가 모두 가능한 C와 같은 통역사 역할을 한다. 이는 인간이 작성한 소스 코드가 궁극적으로 컴퓨터에 명령을 내리려면 인터프리터를 거치는 과정이 필요하다는 의미이다.

!image6.png

앞 장에서 프로그래밍 언어와 프로그램에 대해 설명하면서 우리가 일반적으로 사용하는 모든 프로그램은 운영체제에 의해 동작된다고 했는데 인터프리터 역시 일종의 프로그램이다. 파이썬 인터프리터는 Windows, Mac OS X, Linux를 포함한 다양한 운영체제를 지원하고 있으며 이는 앞으로 당신이 작성하는 파이썬 프로그램은 위에 나열한 운영체제에서 동작한다는 의미와 같다.

자 이쯤에서 혼란스러울 수도 있으니 앞으로 다룰 내용과 다루지 않을 내용에 대해 정리할 필요가 있어 보인다. 우리는 당분간 파이썬의 문법을 올바르게 작성하는 것에 집중할 것이다. 우리가 작성한 소스 코드는 파이썬 인터프리터가 읽고 평가하며 실행하기 때문이다.

!image7.png

우리는 앞으로 인터프리터가 컴퓨터에게 명령을 내리기 위한 내부 과정은 다루지 않을 것이다. 알아두면 나쁠 것은 없겠지만 지금 당장 활용해 볼 수 없는 막연한 내용으로 인해 프로그래밍에 대한 두려움이 생기는 것을 바라지 않는다.

!image8.png

지금까지의 과정을 통해서 파이썬으로 작성된 프로그램은 어떻게 실행되는가? 에 대한 호기심의 해답을 이와 같이 정리해보자. 우리가 작성한 파이썬 소스 코드는 인터프리터에 의해 한 줄 한 줄 읽히는 것을 시작으로 그와 동시에 올바르게 작성됐는지 평가되며 그 결과에 따라서 프로그램이 실행된다고 말이다.

자 마지막으로 우리는 파이썬의 소스 코드는 어디에 작성되는가에 대한 의문이 남은 상태이다.


다음 포스팅에서는 파이썬의 위 의문에 대한 해답과 함께 파이썬 프로그래밍을 시작하기위한 본격적인 준비를 합니다!

Sort:  

처음 방문드리는 듯 합니다. 우선 좋은 글 올려주셔서 감사드립니다~ 다른 컴퓨터 언어를 배우지 않고도 파이썬을 배워도 효용이 있나요? 파워가 부족해 리스팀만 우선 해둡니다~ 즐거운 하루 되세요.. 가즈앗!!

네 천천히 따라오셔도 충분히 의미 있는 결과 있을거라 생각해요 :D

책은 어떤 걸 보는게 좋을지 추천좀 --;;;

국내서적은 점프 투 파이썬을 추천합니다. 이북으로 무료로 보실수도 있어요

오 친절하십니드앗!!! 감사!!! 가즈앗!!! ㅋ

와 단숨에 읽어내려갔네요
프로그래밍을 막연히 하긴 해야겠는데
미루고만 있던 저에게
조금은 부담감을 덜어주는 것 같아요
앞으로도 좋은 글 부탁드릴게요

감사합니다 :) 꾸준하게 파이썬에 대한 이야기를 해볼까 합니다.

앱 개발 입문용 글도 기대해도 될까요

Coin Marketplace

STEEM 0.19
TRX 0.13
JST 0.030
BTC 63595.77
ETH 3415.98
USDT 1.00
SBD 2.49