ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • __init__.py
    Python & Flask & Django 2017. 4. 6. 21:27



    파이썬 프로젝트를 진행하면 반드시 보게 되는 특이(?)한 파일.

    __init__.py 이라는 파일이 폴더에 꼭 하나씩은 포함되어 있는데 내용은 없다?? 

    이 파일이 어디에서 쓰이는지 살펴보자.



    __init__.py 의 용도


    __init__.py 파일은 해당 디렉터리가 패키지의 일부임을 알려주는 역할을 한다. 만약 game, sound, graphic 등 패키지에 포함된 디렉터리에 __init__.py 파일이 없다면 패키지로 인식되지 않는다.


    (* python3.3 버전부터는 __init__.py 파일이 없어도 패키지로 인식된다. 하지만 하위 호환성을 위해 __init__.py 파일을 새엇ㅇ하는 것이 안전한 방법이다.


    시험삼아 __init__.py 파일을 제거하고 다음을 수행해보자.


    >>> import game.sound.echo

    Trackback (most recent call last):

        File "<stdin>", line 1, in <module>

    ImportError: No module named sound.echo


    Sound 디렉터리에 __init__.py 파일이 없어서 임포트 오류(ImportError)가 발생하게 된다.



    'Python & Flask & Django' 카테고리의 다른 글

    Django Model field reference  (0) 2017.04.24
    Django Coding Style  (0) 2017.04.06
    Django Settings - INSTALLED_APPS, MIDDLEWARE  (0) 2017.03.20
    Django Settings  (0) 2017.03.15
    Python Garbage Collection  (0) 2017.02.10
Designed by Tistory.