Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags more
Archives
Today
Total
관리 메뉴

냥집사의 개발일지

Python - 파이썬 기본 문법 정리 ('_', '__')(언더스코어) 본문

Python

Python - 파이썬 기본 문법 정리 ('_', '__')(언더스코어)

깅햄찌 2022. 10. 12. 20:44
반응형

안녕하세요 오늘은 파이썬의 언더스코어 예약어에 대해 정리해보겠습니다.  

'_' 혹은 '__' 로 시작하는 변수들을 심심치 않게 볼 수 있는데요. 

이러한 변수들은 시스템 변수로 이미 예약되어 있는 변수입니다. 

 

몇 가지 예제를 살펴보아요~

 

1) __name__

def document_function(func):
    def about_function(*args, **kwargs):
        print('function_name : ',func.__name__)
        print('positinoal arguments : ', args)
        print('keyword arguments : ', kwargs)
        result = func(*args, **kwargs)
        print('Result : ',result)
        return result
    return about_function

@document_function
def add_ints(a,b):
    return a + b

print(add_ints(7,12))

아래 결과 처럼 함수.__name__을 출력하면 함수의 이름이 출력되는 것을 확인할 수 있습니다. 

저번 decorator 포스팅에서 __name__변수를 사용했었는데요.

코드 해설이 궁금하신 분들은 아래 링크를 참조해주세요.

2022.10.11 - [Python] - Python - 파이썬 기본 문법 정리 (decorator)

 

Python - 파이썬 기본 문법 정리 (decorator)

안녕하세요 오늘은 파이썬의 decorator에 대해 정리해보겠습니다.  decorator함수는 함수를 다른 함수로 반환합니다. 여러 예제를 살펴보면서 decorator에 대해 알아봅시다~ 1) 수동으로 decorator 사용하

leggo-fire.tistory.com

 

2) __doc__

def print_friends_list():
    'This is docstring'
    friends_list = list()
    friends_list.append('Jeff')
    friends_list.append('Alana')
    friends_list.append('Electra')
    return friends_list

print(print_friends_list.__doc__)

함수 안에 작은 따옴표 사이('...')에 문자열을 입력하면 함수의 docstring이 됩니다. 

이는 함수.__doc__으로 출력할 수 있습니다. 

def print_friends_list():
    '''
    This is docstring
    Hello World
    '''
    friends_list = list()
    friends_list.append('Jeff')
    friends_list.append('Alana')
    friends_list.append('Electra')
    return friends_list

print(print_friends_list.__doc__)

여러 줄의 docstring을 생성하려면 ('''...''') 작은따옴표 3개 사이에 문자열을 넣으면 됩니다.

 

3) __main__

#python.py

def print_Hello_World():
    print('Hello_World')

print_Hello_World()

print(__name__)

if __name__ == "__main__":
    print('This is python')
# test.py
import python

python.print_Hello_World()

print(__name__)

if __name__ == "__main__":
    print('This is test')

__main__은 (if__name__ == "__main__") 구문에서 자주 볼 수 있죠 

위의 조건문을 만족한다는 것은 import로 참조되어 열린 파일이 아닌 메인 함수라는 뜻인데요.

메인 함수일 때만 출력시킬 구문을 넣어두면 되겠죠?

 

1. test.py를 실행시켰을 때 

    import python 되어 'Hello_World'가 출력 -> python.py의 __name__ 'python'이 출력 

    test.py로 돌아와서  'Hello_World'가 출력-> test.py의 __name__'__main__' 출력(test.py를 실행했으므로 test.py가 main)

    test.py가 메인이니까 if문 만족 'This is test'를 출력합니다. 

오늘은 파이썬의 언더스코어 예약어에 대해 정리해보았습니다.

그럼 다음 포스팅에서 만나요~ 

Comments