관리 메뉴

정리왕

파이썬의 특징 파이썬은 인간다운 언어이다. 본문

6.개발/파이썬 공부하기

파이썬의 특징 파이썬은 인간다운 언어이다.

정리합니다 2020. 11. 29. 11:27
반응형

필자는 파이썬을 무척 좋아한다. 모든 프로그래밍 언어에는 각기 장점이 있지만 파이썬에는 다른 언어에서는 쉽게 찾아볼 수 없는 파이썬만의 독특한 매력이 있다. 파이썬의 특징을 알면 왜 파이썬을 공부해야 하는지, 과연 시간을 투자할 만한 가치가 있는지 분명하게 판단할 수 있을 것이다. 파이썬의 특징을 알면 왜 파이썬을 공부해야 하는지, 과연 시간을 투자할 만한 가치가 있는지 분명하게 판단할 수 있을 것이다.

 

 

 

파이썬은 인간다운 언어이다.

프로그래밍이란 인간이 생각하는 것을 컴퓨터에 지시하는 행위라고 할 수 있다.

앞으로 살펴본 파이썬 문법에서도 보게 되겠지만, 파이썬은 사람이 생각하는 방식을 그대로 표현할 수 있는 언어이다.

따라서 프로그래머는 굳이 컴퓨터의 사고 체계에 맞추어서 프로그래밍을 하려고 애쓸 필요가 없다. 이제 곧 어떤 프로그램을 구상하자마자 머릿속에서 생각한 대로 술술 써 내려가는 여러분의 모습에 놀라게 될 것이다.

다음 소스 코드를 보면 이 말이 쉽게 이해될 것이다.

if 4 in [1,2,3,4]: print ("4가 있습니다")

위 예제는 다음처럼 읽을 수 있다.

만약 4가 1, 2, 3, 4 중에 있으면 '4가 있습니다.'

프로그램을 모르더라도 직관적으로 무엇을 뜻하는지 알 수 있지 않는가? 마치 영어 문장을 읽는 듯한 착각에 빠져든다.

 

 

 

 

 

파이썬은 문법이 쉬워 빠르게 배울 수 있다.

어려운 문법과 수많은 규칙에 둘러싸인 언어에서 탈피하고 싶지 않은가?

파이썬은 문법 자체가 아주 쉽고 간결하며 사람의 사고 체계와 매우 닮아 있다.

배우기 쉬운 언어, 활용하기 쉬운 언어가 가장 좋은 언어가 아닐까?

유명한 프로그래머인 에릭 레이먼드(Eric Raymond)는 파이썬을 공부한지 단 하루만에 자신이 원하는 프로그램을 작성할 수 있었다고 한다.

 

 

 

 

 

 

 

파이썬은 무료이지만 강력하다.

오픈소스인 파이썬은 당연히 무료이다. 사용료 걱정없이 언제 어디서든 파이썬을 다운로드하여 사용할 수 있다.

※ 오픈소스(Open Source)란 저작권자가 소스 코드를 공개하며 누구나 별다른 제한 없이 자유롭게 사용, 복제, 배포, 수정할 수 있는 소프트웨어이다.

 

또한 프로그래머는 만들고자 하는 프로그램의 대부분을 파이썬으로 만들 수 있다. 물론 시스템 프로그래밍이나 하드웨어 제어와 같은 매우 복잡하고 반복 연산이 많은 프로그램은 파이썬과 어울리지 않는다. 하지만 파이썬은 이러한 약점을 극복할 수 있게끔 다른 언어로 만든 프로그램을 파이썬 프로그램에 포함시킬 수 있다.

파이썬과 C는 찰떡궁합이란 말이 있다. 즉 프로그램의 전반적인 뼈대는 파이썬으로 만들고, 빠른 실행 속도가 필요한 부분은 C로 만들어서 파이썬 프로그램 안에 포함시키는 것이다. 

사실 파이썬 라이브러리 중에서 순수 파이썬만으로 제작된 것도 많지만 C로 만든 것도 많다. C로 만든 것은 대부분 속도가 빠르다.

※ 파이썬 라이브러리는 파이썬 프로그램을 작성할 때 불러와 사용할 수 있는 미리 만들어 놓은 파이썬 파일 모음이다.

 

 

 

 

 

 

파이썬은 간결하다.

귀도는 파이썬을 의도적으로 간결하게 만들었다. 만약 펄(Perl)과 같은 프로그래밍 언어가 100가지 방법으로 하나의 일을 처리할 수 있다면 파이썬은 가장 좋은 방법 1가지만 사용하는 것을 선호한다. 

이 간결함의 철학은 파이썬 문법에도 그대로 적용되어 파이썬 프로그래밍을 하는 사람들은 잘 정리되어 있는 소스코드를 볼 수 있다. 다른 사람이 작업한 소스 코드도 한눈에 들어와 이해하기 쉽기 때문에 공동 작업과 유지 보수가 아주 쉽고 편하다.

 

 

 

 

다음은 파이썬 프로그램의 예제이다. 이 프로그램 소스 코드를 굳이 이해하려 하지 않아도 된다. 이것을 이해할 수 있다면 여러분은 이미 파이썬에 중독된 사람일 것이다. 한번 구경해 보자.

# simple.py
languages = ['python', 'perl', 'c', 'java']

for lang in languages:
       lf lang in ['python', 'perl']:
              print("%6s need interpreter" % lang)
       else lang in ['c', 'java']:
              print("%6s need complier" % lang)
       else
              print("should not reach here")

이 예제는 프로그래밍 언어를 판별하여 그에 맞는 문장을 출력하는 파이썬 프로그램 예제이다. 다른 언어에서 늘 보게 되는 단락을 구분하는 괄호({ })문자가 보이지 않는 것을 확인할 수 있다. 또한 줄을 참 잘 맞춘 코드라는 것도 알 수 있다. 파이썬 프로그램은 줄을 맞추지 않으면 실행되지 않는다. 코드를 예쁘게 작성하려고 줄을 맞추는 것이 아니라 프로그램이 실행되게 하려면 꼭 줄을 맞추어야 하는 것이다. 이렇듯 줄을 맞추어 코드를 작성하는 행위는 가독성에 크게 도움이 된다.

 

※ 이렇게 코드의 줄을 맞추는 것을 '들여쓰기'라고 부른다. 파이썬에는 들여쓰기를 하지 않으면 프로그램이 실행되지 않는다.

 

 

 

 

 

 

 

파이썬은 프로그래밍을 즐기게 해 준다.

이 부분이 가장 강조하고 싶은 부분이다. 파이썬만큼 필자에게 프로그래밍을 즐기게 해 준 언어는 없었다. 파이썬은 다른 것에 신경 쓸 필요 없이 내가 하고자 하는 부분에만 집중할 수 있게 해준다. 파이썬을 배우고 나면 다른 언어로 프로그래밍하는 것에 지루함을 느끼게 될지도 모른다. 조심하자!

 

 

 

 

 

 

 

 

 

 

 

파이썬은 개발 속도가 빠르다

마지막으로 재미있는 다음 문장으로 파이썬의 특징을 마무리하겠다.

 

"Life is too short. You need Python." (인생은 너무 짧으니 파이썬이 필요해)

 

파이썬의 엄청나게 빠른 개발 속도를 두고 유행처럼 퍼진 말이다. 이 위트 있는 문장은 이 책에서 계속 예제로 사용될 것이다.

 

 

 

 

반응형
Comments