.pyo 파일은 파이썬 소스 코드 파일(.py)의 컴파일된 버전입니다. 이 파일은 파이썬이 -O 또는 -OO 최적화 플래그와 함께 실행될 때 생성됩니다. 이 플래그들은 파이썬 인터프리터에게 컴파일 과정 중 일부 최적화(optimization)를 수행하도록 지시합니다. 예를 들어, -OO 플래그를 사용하면 assert 문과 docstring이 제거됩니다. 결과적으로 생성된 .pyo 파일은 바이트코드(bytecode)를 포함하며, 이는 파이썬 코드를 하위 수준으로 표현한 것으로 파이썬 가상 머신(PVM, Python Virtual Machine)에 의해 실행될 수 있습니다. .pyo 파일을 사용하면 컴파일 단계가 이미 완료되었기 때문에 파이썬 프로그램의 시작 시간(startup time)을 잠재적으로 개선할 수 있습니다. 하지만 현대 파이썬 구현에서는 이러한 성능 향상이 미미한 경우가 많습니다. .pyo 파일은 이를 컴파일하는 데 사용된 파이썬 버전에 종속적이며, 사람이 읽을 수 없습니다. 이 파일은 일반적으로 최적화 없이 생성되는 .pyc 파일과 함께 컴파일된 파이썬 코드를 배포하는 데 사용되었습니다. 참고로, 파이썬 3.5 버전 이후부터는 .pyo 파일이 __pycache__ 디렉토리에 저장되는 .pyc 파일로 대체되었으며, 최적화 수준은 .pyc 파일 이름 내에 표시됩니다 (예: .opt-1.pyc).