강의/python3

[python3] 3강. 프로그램의 기본 구조

jinkwon.kim 2022. 4. 4. 12:56
728x90
반응형

목표

프로그램의 기본 구조에 대하여 알아 봅니다.

 

강의영상 

https://youtu.be/DS89SziAFAk

 

Program의 기본 구조

program은 일반적으로 여러 파일로 쪼개져서 구현이 됩니다. 

하지만 모든  파일의 구조는 아래를 따릅니다.

1. Header 들... (필수, python은 예외)

    - Header의 목적은 각종 library(기능들의 묶음)를 program에서 사용하겠는 것을 선언하기 위한 것이다.

2. class 들...(선택)

    - class의 목적은 연관된 (변수 + function) 을 묶어 놓기 위해한 것이다.

3. function 들...(선택)

    - 자료(=data) 를 처리 하기 위해 사용됨

4. main function(필수)

    - program의 시작 위치

 

구조 예시

C++의 프로그램 기본 구조

// Header 들..
#include <iostream>

// Class 들...
class Hello {
private:
    std::string m_sStr;
public:
    Hello(std::string str) {
        m_sStr = str;
    }
    std::string GetString() {
        return m_sStr;
    }
};

// Function 들..
std::string HelloWorld() {
    return "Hello World\n";
}

// Main Function 
int main(int argc, char** argv) {
    printf("hello world\n");

    printf(HelloWorld().c_str());

    Hello h = Hello("hello world\n");
    printf(h.GetString().c_str());

    return 0;
}

 

Python의 프로그램 기본 구조

#header
import os

#Class들...
class Hello:
    def __init__(self, name):
        self.name = name

    def GetStr(self):
        return self.name

#function 들...
def Helloworld():
    return "hello world"

#main function
if __name__ == "__main__":
    print("hello world")

    print(Helloworld())

    h = Hello("Hello world")
    print(h.GetStr())

 

기본 구조대로 Programming을 한다는 것의 의미

header를 사용하여 내가 원하는 여러 library(기능) 사용 할 수 있게 만들고

class나 function을 이용하여 자료를 단계 별로 쪼개서 처리 할 수 있도록 만들고 

메인 function에서 제어문(if문, for문)을 사용하여 프로그램을 내가 원하는 방향으로 동작 하게 만듭니다.

 

그래서 크게 아래 4가지를 배우면 programming의 기초를 다 배운 것입니다.

    1. 자료를 저장하는 규칙 (변수)
    2. 프로그램을 원하는 방향으로 동작하게 하는 규칙 (제어문)
    3. function을 만드는 규칙 (function)
    4. class는 만드는 규칙 (class)

 

예제

#header
import os

#Class들...
class Person:
    def __init__(self, name):
        self.name = name

    def GetName(self):
        return self.name
    
    def Walk(self):
        return "수푸자 산책 중"

    def Run(self):
        return "난 뛴다."

#function 들...
def GetComputerName():
    return "좋은 컴퓨터"

#main function
if __name__ == "__main__":
    #외부library 사용 
    print("컴퓨터 이름", os.name)

    #함수 호출
    print(GetComputerName())

    #class 생성 
    ps = Person("김진권")
    print("거주자 : ", ps.GetName())

    #변수 활용
    dog_staus = "runA"

    #제어문 if, for 사용
    if (dog_staus == "run"):
        print(ps.Run())
    else:
        for i in range(10):
            print(ps.Walk())

실행 결과 

컴퓨터 이름 posix
좋은 컴퓨터
거주자 : 김진권
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중
수푸자 산책 중

 

Programming 시 필수로 알아야 할 것 

주석 이란?

    - 코딩에는 직접 적인 연관이 없지만 program의 흐름을 이해 하기 쉽게 해주는 것.

1. #

    - single line 주석 

#주석 처리 되는 라인

 

2. """ 

    - multii line 주석 

"""
이부분은 모두 
주석 처리 됩니다. 
"""

 

Python 실행 방법

1. python shell 로 실행 

    - 단발적으로 program을 실행 할 경우

    - 윈도우 경우 cmd 창을 뛰웁니다, window key + r, cmd 입력 

    - python 입력

2. python 파일을 실행

    - 반복적으로해야 program을 실행 할 경우

    - 윈도우 경우 cmd 창을 뛰웁니다, window key + r, cmd 입력 

    - python test.py 를 실행 합니다.

 

728x90
반응형

'강의 > python3' 카테고리의 다른 글

[python3] 6강. function(함수)  (0) 2022.04.13
[python3] 5강. 집합 관련 자료형 -2  (0) 2022.04.12
[python3] 4강. 변수와 제어문 -1  (0) 2022.04.07
[python3] 2강. 강의 커리큘럼  (1) 2022.03.30
[python3] 1강. OT  (0) 2022.03.30