저는 Linux Mint 20.3에서 PyCharm 2022.3.2(Community Edition)를 사용하고 있습니다. 새 프로젝트를 생성하고 옵션으로 "Virtualenv를 사용하는 새 환경"을 선택했습니다. PyCharm은 이 프로젝트의 인터프리터로 "Python 3.10"을 표시합니다.
Venv에 새 패키지를 설치하는 것을 포함하여 이 프로젝트에서 내 코드를 실행하면 모든 것이 잘 작동합니다. PyCharm의 대화형 Python 콘솔은 Python 3.10이 venv의 실행 파일과 작동하는지 확인합니다.
그러나 이제 PyCharm 없이 일반 터미널에서 코드를 실행하고 싶습니다. 그래서 cd
프로젝트 디렉터리로 이동하여 다음 명령을 호출합니다.
$ source venv/bin/activate
(venv) $ which python
python not found
Python 실행 파일을 찾지 못했습니다! 3개의 심볼릭 링크 중 venv/bin
유효한 것이 없습니다(내 터미널 창에 빨간색).
(venv) $ ls -lah venv/bin/pyt*
lrwxrwxrwx 1 (redacted) (redacted) 19 Mar 15 09:56 venv/bin/python -> /usr/bin/python3.10
lrwxrwxrwx 1 (redacted) (redacted) 6 Mar 15 09:56 venv/bin/python3 -> python
lrwxrwxrwx 1 (redacted) (redacted) 6 Mar 15 09:56 venv/bin/python3.10 -> python
/usr/bin/python3.10
내 시스템에 설치되지 않았습니다:
$ ls -lah /usr/bin/pyt*
lrwxrwxrwx 1 root root 9 Aug 8 2020 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 3,5M Jul 1 2022 /usr/bin/python2.7
lrwxrwxrwx 1 root root 9 Aug 8 2020 /usr/bin/python3 -> python3.8
-rwxr-xr-x 1 root root 5,3M Nov 14 13:59 /usr/bin/python3.8
lrwxrwxrwx 1 root root 33 Nov 14 13:59 /usr/bin/python3.8-config -> x86_64-linux-gnu-python3.8-config
lrwxrwxrwx 1 root root 16 Mar 13 2020 /usr/bin/python3-config -> python3.8-config
그렇다면 PyCharm에서 사용되는 Python 3.10 실행 파일은 어디에 있습니까? PyCharm 외부에서 venv를 어떻게 사용하나요?
답변1
나는 마침내 무슨 일이 일어나고 있는지 알아 냈습니다. Linux Mint Software Manager를 통해 PyCharm을 설치했는데 다음과 같이 설치되었습니다.플랫팩팩. 분명히 이 패키지는 샌드박스에서 자체 Python 3.10을 사용합니다.
모래 상자
Flatpak을 사용하면 각 애플리케이션이 격리된 환경("샌드박스"라고 함)에서 구축되고 실행됩니다. 각 샌드박스에는 애플리케이션과 해당 런타임이 포함되어 있습니다.
이 샌드박스에 들어가면 올바른 Python 실행 파일이 발견되고, venv를 올바르게 입력하고 애플리케이션을 시작할 수 있습니다.
$ flatpak run --branch=stable --arch=x86_64 --command=bash com.jetbrains.PyCharm-Community
$ ls -lah /usr/bin/pyt*
lrwxrwxrwx 1 nfsnobody nfsnobody 7 Feb 27 11:05 /usr/bin/python -> python3
lrwxrwxrwx 1 nfsnobody nfsnobody 10 Feb 27 11:05 /usr/bin/python3 -> python3.10
-rwxr-xr-x 2 nfsnobody nfsnobody 16K Feb 27 11:04 /usr/bin/python3.10
-rwxr-xr-x 2 nfsnobody nfsnobody 3,3K Feb 27 11:04 /usr/bin/python3.10-config
lrwxrwxrwx 1 nfsnobody nfsnobody 17 Feb 27 11:05 /usr/bin/python3-config -> python3.10-config
$ cd <project_directory>
$ source venv/bin/activate
(venv) $ which python
<project_directory>/venv/bin/python