최근에 pyc 파일을 보지 않으면python3에서pycache로 격리되면
"어...? 요즘 pyc 파일 안 봐요?"
알아차렸어.
그리고 스타일에 큰 변화가 생겨서 (낡았지만) 써 봤어요.
pyc 파일
정부측은 이런 설명을 쓰고 있다.
CPython compiles its source code into "byte code", and for performance reasons, it caches this byte code on the file system whenever the source file has changes. This makes loading of Python modules much faster because the compilation phase can be bypassed. When your source file is foo.py, CPython caches the byte code in a foo.pyc file right next to the source.
세 줄로 정리하면
따라서 읽기 속도를 높이는 역할을 한다.
pyc 파일을 만들어 보세요!
├─ a.py
├─ b.py
└─ c.py
a.pyimport b
import c
b.hello()
c.goodmorning()
b.pydef hello():
print("hello")
c.pydef goodmorning():
print("goodmorning")
결과
hello
goodmorning
$ ls
a.py b.py b.pyc c.py c.pyc
pyc 파일이 진행 중입니다.pyc 행방의 진실
하지만 언제부터인지 이 pyc 파일은 옆에서 만들 수 없습니다.
꼭
그렇게 생각하지만 그런 일은 없어요.
python3.2부터 저장 위치가 변경되었다고 합니다.
이 새 파일들이 원본 디렉터리에 함부로 놓여 있지 않도록 pyc 파일은 패키지 디렉터리에 있는'pycache'디렉터리에 수집됩니다.
응응, 확실히 원본 코드를 찾는 것은 이중적이어서 보기 흉해.
그래서 관리 방법을 바꿨어요.
새 pyc 파일 확인
이번에는 같은 파일 구성으로python3.2에서 확인(위는 2.7에서 시도한 것입니다.)
├─ a.py
├─ b.py
└─ c.py
a.pyimport b
import c
b.hello()
c.goodmorning()
b.pydef hello():
print("hello")
c.pydef goodmorning():
print("goodmorning")
결과
$ ls
__pycache__ a.py b.py c.py
$ ls __pycache__/
b.cpython-37.pyc c.cpython-37.pyc
이렇게 pycache/부하.pyc가 생성되었습니다!
Reference
이 문제에 관하여(최근에 pyc 파일을 보지 않으면python3에서pycache로 격리되면), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/rf_mori/items/28d649562bf1148b8057텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)