본문 바로가기

파이썬 공부

3.파이썬, 주석을 활용하자(기초)

728x90
반응형
SMALL

이 주석이 아니고.. 출처: https://t1.daumcdn.net/cfile/tistory/110FDD3D5121EF8802

주석이란?

낱말이나 문장의 뜻을 쉽게 풀이함. 또는 그런 .

 

이러한 주석이 프로그래밍에 왜 쓰이는 걸까?

그 이유는 본인이 적은 코드에 대한 메모 및 해설을 위한 것이다.

본인이 짠 코드를 본인이 봐도 이해하는데 시간이 걸리는데 남들이 볼때도 코드를 보고 파악하려면 시간이 걸린다.

하지만 본인이 짠 코드에 대한 해설, 정보, 메모 등을 주석을 이용하여 코드에 적어두면 타인이나 본인이 코드를 다시 봤을때

이해하기 훨씬 수월해진다. 

현업에서도 코드는 혼자서만 짜는 것이 아니고 여럿이서 같이 파트를 나누며 코딩을 하기 때문에 주석을 잘 달아야 한다.(거의 필수)


그럼 파이썬에서 주석을 쓰는 법을 알아보자. (타 프로그래밍 언어에서 한거처럼 주석 달면 된다.)

주석은 이렇게 다는게 아니에요 하하
이러면 에러나요

print('Hello World!')

결과는 역시

에러났다.

메모를 했을 뿐인데 왜 신텍스 에러가 나는 것일까...는 왜냐면

구분을 안해줬기 때문이다. 메모 시작과 끝에 제일 많이 쓰이는 세가지가 있는데

첫번째는

//

 

두번째는

/* 안에 들어갈 내용 */

 

/*

안에 들어갈 내용

*/

 

세번째는

#

이렇게 세가지가 있다. 나는 이 세개밖에 모른다.

그중 파이썬에서만 쓸 수 있는(?) 주석은 #과 """(3개)이다.

다른 주석을 넣으면 신텍스 에러가 난다.


다시 코딩해보자. 제목은 jusuckhi.py

print('Hello World!')
print('Hello Jusuck!') #주석은 이렇게도 가능해요
#주석을 쓰면
#컴퓨터가 주석 안의 내용을 인식하지 않아요
#사람만 보라고 있는거임
#import time
#curTime = time.time()
#cTime = time.ctime(curTime)
#gmTime = time.gmtime(curTime)
#mkTime = time.mktime(gmTime)
#print "Second :", curTime
#print "DateTime :", cTime
#print "TimeStruct :", gmTime
#print "TimeStruct To Second :", mkTime
#print "Second :", curTime
#print "DateTime :", cTime
#print "TimeStruct :", gmTime
#print "TimeStruct To Second :", mkTime
print('hay')
#코드 자체에 주석을 달면
#그 줄의 코드는 인식되지 않아요
#꼭 메모용도만으로 주석을 쓰진 않아요!

vim 신텍스 하이라이팅 적용시 모습 으..구별안가
출력 결과

# 부분을 제외한 코드가 정상 출력 되었다.

""" (3개)를 쓰면 긴 줄을 주석처리 할 수 있다.

print('Hello World!')
print('Hello Jusuck!') #주석은 이렇게도 가능해요

"""
주석을 쓰면
컴퓨터가 주석 안의 내용을 인식하지 않아요
사람만 보라고 있는거임
"""

"""
import time
curTime = time.time()
cTime = time.ctime(curTime)
gmTime = time.gmtime(curTime)
mkTime = time.mktime(gmTime)
print "Second :", curTime
print "DateTime :", cTime
print "TimeStruct :", gmTime
print "TimeStruct To Second :", mkTime
print "Second :", curTime
print "DateTime :", cTime
print "TimeStruct :", gmTime
print "TimeStruct To Second :", mkTime
"""
print('hay')

"""
코드 자체에 주석을 달면
그 줄의 코드는 인식되지 않아요
꼭 메모용도만으로 주석을 쓰진 않아요!
"""

"""를 써서 """ (주석할 내용) """ 이런식으로 둘러버리면 긴 줄도 다 주석처리 가능하다. 일일이 # 안써도

얘 출력 결과는 위와 똑같기에 따로 출력 결과를 캡쳐하지 않았다.


다른 언어에서는 어뜨케 쓰이냐 하면 (C언어 예제) 제목은 starprintstair.c

/*
별을 찍는 코드입니다.
*
**
***
****
*****
요러케요
별을 출력합니다 계단식으로
*/
#include <stdio.h>

int main()
{
    for (int i = 0; i < 5; i++)    // 5번 반복. 세로 방향
    {
        for (int j = 0; j < 5; j++)   // 5번 반복. 가로 방향
        {
            if (j <= i)               // 세로 방향 변수만큼
                printf("*");          // 별 출력
        }
        printf("\n");              // 가로 방향으로 별을 다 그린 뒤 다음 줄로 넘어감
    }

    return 0;
}

/*
{
    for (int i = 0; i < 5; i++)    // 5번 반복. 세로 방향
    {
        for (int j = 0; j < 5; j++)   // 5번 반복. 가로 방향
        {
            if (j <= i)               // 세로 방향 변수만큼
                printf("*");          // 별 출력
        }
        printf("\n");              // 가로 방향으로 별을 다 그린 뒤 다음 줄로 넘어감
    }

    return 0;
}
*/

//{
//    for (int i = 0; i < 5; i++)    // 5번 반복. 세로 방향
//    {
//        for (int j = 0; j < 5; j++)   // 5번 반복. 가로 방향
//        {
//            if (j <= i)               // 세로 방향 변수만큼
//                printf("*");          // 별 출력
//        }
//        printf("\n");              // 가로 방향으로 별을 다 그린 뒤 다음 줄로 넘어감
//    }

//    return 0;
//}

회색으로 잘 안보이게 하이라이팅 된게 정상이다. 어차피 인식하지 않을 부분이기 때문이다.

좀 극단적으로 주석을 사용하긴 했다(떡칠함). 이렇게 까지 할 필욘 없고 필요에 따라 주석을 적절히 사용하면 된다.

여기서 #은 주석이 아니다 (C에서)

//로는 긴 줄을 주석처리 하기 힘드니

/*

*/을 사용한 모습이다.


주석의 용도에 대해 알아보았다. (기초)

메모, 코드 설명, 그리고 잠시 기능을 끄고 싶은 줄의 코드 기능 못하게 꺼버리기(그 줄 주석처리로)

이런 용도로 쓰인다고 이해하면 된다.

 

다음 글은 파이썬에서의 숫자와 문자열에 관해서 올릴 것이다.

반응형
LIST