개발자/파이썬 Python

파이선에 대해 알아야 할 것, 리얼파이선 2

지구빵집 2022. 1. 20. 16:51
반응형

 

 

여러분이 컴퓨터를 많이 사용한다면, 결국 자동화하고 싶은 작업을 발견하게 됩니다. 예를 들어, 많은 텍스트 파일들을 검색-수정하고 싶거나, 사진 파일들을 복잡한 방법으로 이름을 바꾸거나 재배치하고 싶을 수 있습니다. 어쩌면 자그마한 자신만의 데이터베이스나 GUI 응용 프로그램, 또는 간단한 게임을 만들고 싶을 것입니다.

 

파이선에 대해 알아야 할 것, 리얼파이선 2 

 

만약 여러분이 전문 소프트웨어 개발자라면, 여러 C/C++/Java 라이브러리들을 갖고 작업해야만 할 수 있는데, 일반적인 코드 작성/컴파일/테스트/재컴파일 순환이 너무 느리다는 것을 깨닫게 됩니다. 어쩌면 그 라이브러리들을 위한 테스트 스위트를 작성하다가, 테스트 코드 작성에 따분해하는 자신을 발견하게 됩니다. 또는 확장 언어를 사용하는 프로그램을 작성했는데, 완전히 새로운 언어 전체를 설계하고 구현하고 싶지 않을 수 있습니다.

 

 

난생 처음 파이선 강의자료

 

파이썬은 바로 여러분을 위한 언어입니다. 

 

파이썬은 사용이 간단하지만, 제대로 갖춰진 프로그래밍 언어인데, 셸 스크립트나 배치 파일보다 더 많은 구조를 제공하고 커다란 프로그램을 위한 지원을 제공합니다. 반면에, 파이썬은 C보다 훨씬 많은 에러 검사를 제공하고, 유연한 배열과 딕셔너리 같은 고수준의 자료형들을 내장하고 있습니다. 더 일반적인 자료형들 때문에 Awk 나 Perl보다도 더 많은 문제 영역에 쓸모가 있는데, 그러면서도 여전히 많은 것들이 적어도 이들 언어를 사용하는 것만큼 파이썬에서도 쉽게 해결할 수 있습니다.

 

파이썬은 여러분의 프로그램을 여러 모듈로 나눌 수 있도록 하는데, 각 모듈은 다른 파이썬 프로그램에서 재사용할 수 있습니다. 대규모의 표준 모듈들이 따라오는데 여러분의 프로그램 기초로 사용하거나 파이썬 프로그래밍을 배우기 위한 예제로 활용할 수 있습니다. 이 모듈에는 파일 입출력, 시스템 호출, 소켓들이 포함되는데, 심지어 Tk와 같은 GUI 도구 상자에 대한 인터페이스도 들어있습니다.

 

파이썬은 인터프리터 언어입니다. 컴파일과 링크 단계가 필요 없으므로 개발 시간을 상당히 단축해줍니다. 인터프리터는 대화형으로 사용할 수 있어서, 언어의 기능을 실험하거나, 쓰고 버릴 프로그램을 만들거나, 바닥부터 프로그램을 만들어가는 동안 함수들을 테스트하기 쉽습니다. 간편한 탁상용 계산기이기도 합니다.

 

 

난생 처음 파이선 강의자료

 

난생 처음 파이선 강의자료

 

파이썬은 간결하고 읽기 쉽게 프로그램을 작성할 수 있도록 합니다. 파이썬 프로그램은 여러 가지 이유로 같은 기능의 C, C++, Java 프로그램들에 비교해 간결합니다:

 

  • 고수준의 자료형 때문에 복잡한 연산을 한 문장으로 표현할 수 있습니다;
  • 문장의 묶음은 괄호 대신에 들여 쓰기를 통해 이루어집니다;
  • 변수나 인자의 선언이 필요 없다.

 

파이썬은 확장 가능하다: C로 프로그램하는 법을 안다면, 인터프리터에 새로운 내장 함수나 자료형을 추가해서, 핵심 연산을 최대 속도로 수행하거나 바이너리 형태로만 제공되는 라이브러리(가령 업체가 제공하는 그래픽스 라이브러리)에 파이썬 프로그램을 연결할 수 있습니다. 진짜 파이썬에 매료되었다면, C로 만든 응용 프로그램에 파이썬 인터프리터를 연결하여 그 응용 프로그램의 확장이나 명령 언어로 사용할 수 있습니다.

 

 

파이선 언어의 특징

 

 

파이선의 특징을 알아보면 

 

파이선은 스크립트 언어(Script Language): 파이썬은 스크립트 언어로 컴파일 과정 없이 인터프리터에 의해 실행 결과를 바로 확인하고 수정하며 코드를 작성할 수 있습니다. 

 

파이선은 동적 타입 언어: 파이썬은 동적 타입 언어로 변수의 자료형을 지정하지 않고 선언하는 것만으로 값을 지정할 수 있습니다. 이렇게 선언한 변수의 자료형은 코드가 실행되는 시점에 결정됩니다. 아래 코드를 보면 다른 컴파일 언어는 프로그램을 기계어로 번역하고 실행하기 전에 확정된 자료형에 할당을 하지만, 파이선은 실행 시점에 결정되는 실행문을 보여줍니다.  

 

#Java
int a = 30

#Python
a = 30

 

이런 점은 개발 당시에는 편할 수 있지만, 코드 실행 도중 예상치 못한 타입으로 에러가 발생할 수 있다는 단점이 있습니다. 

 

파이선은 플랫폼 독립적 언어: 파이썬은 대부분의 운영체제에서 모두 동작하는 언어입니다. 윈도우, 리눅스, 맥 등 운영체제에 따라 컴파일할 필요가 없기 때문에 어떤 환경에서도 활용이 가능합니다. 

 

파이선이 갖고 있는 장점을 알아보면

 

파이선은 배우기 쉽습니다. 파이썬은 러닝 커브가 낮다는 장점을 가지고 있습니다. 인간의 사고와 유사한 면을 가지고 있어서인지 프로그래밍을 모르는 비전공자도 쉽게 배울 수 있습니다. 'Hello World'라는 문장을 출력할 때 Java와 Python을 비교해보면 아래와 같습니다. 

 

파이선은 응용 프로그램을 빠르게 개발할 수 있습니다. 파이썬은 생산성이 높습니다. 즉, 쉽고 간결한 문법 덕분에 빠르게 개발이 가능하며 더 적은 코드로 더 많은 작업 수행이 가능합니다. 또한, 복잡한 구문으로 인한 오류 발생을 줄일 수 있습니다. 

 

파이선은 높은 확장성 및 이식성을 가지고 있습니다. 앞에서도 설명했지만 파이썬은 다른 언어나 라이브러리에 쉽게 접근해 연동이 가능합니다. 고성능 애플리케이션이 필요한 경우 C/C++ 언어와 결합해 사용이 가능합니다. 

 

파이선은 아주 다양하고 넓고 활발하게 움직이는 생태계를 가지고 있습니다. 파이썬은 수많은 라이브러리뿐만 아니라 오픈소스를 통해 많은 개발자들이 사용하는 언어를 그대로 사용할 수 있습니다. 최근에 개발되는 머신러닝 라이브러리, 오픈소스 대부분도 파이썬으로 개발되어 제공되는 걸 보면 얼마나 생태계가 활발한지 알 수 있습니다. 이 또한, 빠른 개발뿐만 아니라 많은 사람들과 협업이 가능하다는 장점 또한 가지고 있습니다. 

 

파이썬이라는 이름은 《Monty Python’s Flying Circus》라는 BBC 쇼에서 따온 것이고, 파충류와는 아무런 관련이 없습니다. 문서에서 Monty Python의 농담을 인용하는 것은 허락된 것일 뿐만 아니라, 권장되고 있습니다.

 

이제 여러분은 파이썬에 한껏 흥분한 상태고 좀 더 자세히 들여다보길 원할 것입니다. 언어를 배우는 가장 좋은 방법은 사용하는 것이기 때문에, 이 학습서를 읽으면서 직접 파이썬 인터프리터를 만져볼 것을 권합니다.

 

다음 장에서, 인터프리터를 사용하는 방법을 설명합니다. 이것은 약간 지루할 수도 있는 정보지만, 이후에 나오는 예제들을 실행하기 위해서는 꼭 필요합니다.

 

자습서의 나머지는 파이썬 언어와 시스템의 여러 기능을 예제를 통해 소개합니다. 간단한 표현식, 문장, 자료형에서 출발해서 함수와 모듈을 거쳐, 마지막으로 예외와 사용자 정의 클래스와 같은 고급 개념들을 다룹니다. 

 

 

파이선에 대해 알아야 할 것, 리얼파이선 xx

 

 

 

반응형