콘텐츠로 건너뛰기
Home » [Python] 파이썬 Source의 기본 형태

[Python] 파이썬 Source의 기본 형태

 

안녕하세요. 이번 포스트에서는 파이썬에서 Source 기본 형식에 대해 알아보도록 하겠습니다. 

파이썬은 간단한 문법으로 인해 배우기 쉽고, 객제 지향 프로그램을 손쉽게 구현할수 있는 특징을 가지고 있습니다. 이러한 특징은 초보자도 라고 할지라도 비교적 쉽게 프로그래밍에 접할수 있고, 코드를 재활용하기가 매우 수월하여 수많은 응용 라이브러리를 사용할수 있는 장점이 많은 언어입니다. 

전 그래서 개인적으로 파이썬을 좋아하고, 프로그래밍을 처음 접하거나 초보자인 분들에게 강력 추전드리는 언어라고 말씀드리고 싶습니다. 파이썬을 충분히 다를줄 안다면, 다른 언어인 C/C++/JAVA 등도 접근하기 수월할것으로 생각됩니다. 

자 그러면, 파이썬의 소스 기본 구조가 어떻게 되어 있는지 확인해 보겠습니다.

파이썬의 기본 형식

먼저 간단한 예제를 들어보도록 하겠습니다.

test..py

import sys
 
class makeClass :
    def __init__(self):
        self.ret = 0        
 
    def method_first(self, a, b):
 
        # 여기다 코드를 넣으세요.
 
        print('Print method 1')
        return self.ret
 
    def method_second(self, a, b, c):
 
         print('Print method 2')
         return self.ret
 
def main():
    run = makeClass()
    run.method_first(1,2)
    run.method_second(1,2,3)
 
if __name__ == '__main__':
    main()

위의 예제는 파이썬을 실행시키는데 가장 기본적인 부분을 소스로 표시를 한겁니다. 여기서는 자세한 문법에 대해 설명은 하지 않도록 하겠습니다. 단지 위의 구조가 파이썬에서 기본으로 실행되는 구문이라고 생각하시면 됩니다. 

먼저 import sys 라는 구문은 test.py 에서 외부의 sys라는 라이브러리를 load를 한다고 보시면 됩니다. 즉 sys 라이브러리의 class의 method를 사용할테니 test.py에서 불러오게 되는 것이죠. 만약 추가적으로 다른 라이브러리를 사용하고 싶으면 “import [라이브러리명]” 을 추가하면 됩니다. 

다음에 3행의 class makeClass는 파이썬에서 makeClass라는 클래스를 선언한 것입니다. 파이썬은 C나C++과는 다르게 클래스나 함수 선언시 별도의 header파일에서 클래스나 함수를 선언하지 않아도 외부에서 사용하는데 지장이 없습니다. 즉 py파일에서 클래스만 선언하면 다른 py파일에서 호출하여 사용하면 됩니다. 

클래스를 선언을 하고 4행부터 17행까지 클래스 함수를 선언을 했습니다. 클래스 함수는 class 구문 밑에 선언을 하며, def 를 붙여서 선언을 하면 됩니다. 파이썬은 들여쓰기로 함수의 시작과 끝을 구분하기 때문에, 별도의 괄호를 입력하기 않아도 됩니다. 위의 예제에서는 __init__() 과, method_first(), method_second()의 총 3가지 클래스함수를 선언하였습니다. __init__() 함수는 클래스를 선언하면 자동으로 실행되는 함수이기 때문에, 변수 초기화나 클래스 호출시 실행되어야 할 구문을 넣으면 됩니다. 

또한 클래스함수는 argument에 꼭 self를 넣어야 합니다. 이건 클래스 함수 선언시에 정해진 문법이므로 별다른 이유는 없습니다. 하지만 self는 prefix같은 것이기 때문에, 실제로 사용하는 클래스함수 argument는 self를 뺀 나머지가 됩니다. 위의 예제에서는 method_second()의 경우에는 self를 뺀 a,b,c를 실제로 정의하고 사용합니다. 

19번째 행에서는 파이썬의 함수가 정의가 되어 있습니다. 파이썬의 재밌는 특징이 한 파일의 소스에서 클래스와 함수를 같이 따로 정의해도 문법상의 문제가 없다는 겁니다. 즉 클래스를 정의하고, 별도의 함수를 정의해도 프로그램의 수행에는 아무 문제가 되지 않습니다. 수십개의 클래스와 수십개의 함수를 동시에 사용해도 됩니다. C++/JAVA와는 다른 파이썬 만의 특징인거 같습니다. 19번째 행에서 함수는 makeClass 클래스를 호출하여, method_first()와 method_second()를 호출하는 구문이 정의가 되었습니다.

24번째 행에는 C에서 main함수가 실제 프로그램에서 가장 먼저 호출이 되듯이, 파이썬에서 main함수와 같은 역할을 하는 구문을 기술하였습니다. 여기서는 main()이라는 파이썬 함수를 호출하고 있습니다. 즉 main()함수를 실행하면 main()함수에서 구현되어 있는, makeClass 클래스 호출과, method_first(), method_second() 처럼 클래스 함수들을 차례대로 호출합니다. 즉 main()함수가 실행되는 구문이 실제 파이썬에서 수행되는 구문이라고 보시면 되겠습니다. 물론 이름은 main()이라고 하지 않고 다른 이름으로 정의해도 됩니다. 

위의 소스를 실행하면 어떻게 될까요? 다음과 같이 결과가 출력이 될것입니다.

Print method 1

Print method 2

파이썬의 활용

위의 예제를 봤을땐 파이썬의 구조가 간단하지요? 여기다가 본인의 코드를 하나둘씩 붙혀가면 본인이 원하는 프로그램을 코딩을 하게 되는 것입니다. 파이썬이 매력적인게 전에 포스트에서도 잠깐 언급을 했었지만, 위의 예제같이 간단한 몇줄짜리 코드를 가지고 Windows GUI 창을 하나 떡~하니 만들수 있다는 것이지요. 물론 Windows뿐만 아니라, Linux도 마찬가지입니다. 

또한 방대한 라이브러리 덕분으로, 여러분들이 맘만 먹으면 본인의 노트북이나 PC에서 자동 작업을 시킬수 있습니다. 예를 들면, 자동 파일 복사, 타이머, 특정 프로그램 수행 후 PC전원 종료 등등… 활용할수 있는 부분이 엄청나게 많습니다. C/C++/JAVA에 비하여 문법이 간단하면서도 활용도가 높은 언어가 바로 파이썬이라고 보시면 됩니다. 

지금까지 간단하게 파이썬 소스의 기본 구조에 대하여 알아보았습니다. 다음 포스트에서는 파이썬으로된 기초적인 알고리즘 예제와 손쉽게 활용할수 있는 여러가지 예제를 차근차근 올려보도록 하겠습니다. 

'정원딸린집'에는 쿠팡파트너스 등의 제휴링크가 포함되어 있으며 수수료를 제공받을 수 있습니다.
error: Content is protected !!