Рубрики
Без рубрики

Почему я не установил Python из магазина Microsoft

Я большой поклонник Python! Поэтому, пожалуйста, не мешайте мне установить Python на Windows. Насколько я знаю, … с меткой Windows, Python, сегодня.

Я большой поклонник Python! Поэтому, пожалуйста, не мешайте мне установить Python на Windows. Насколько я знаю, у нас есть два способа сделать это. Первый вариант – мы можем скачать установщик из Официальная страница Что, я считаю, это решение, предпочитаемое большинством пользователей.

Но давай, я не хочу беспокоить Microsoft Defender SmartScreen! Итак, я пошел ко второму варианту, чтобы загрузить его из Microsoft Store! Любить это! Это самый простой способ забрать его домой! Обратите внимание, что на самом деле есть несколько других вариантов, но мне просто лень говорить все это.

После завершения установки я пошел на терминал Windows, набранный в Python и нажмите клавишу Enter/return в течение секунды или двух. Внезапно я получил сообщение об ошибке ужасов, кричащее на меня красным.

> python
python : The term 'python' is not recognized as the name of a cmdlet, function, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ python
+ ~~~~~~
    + CategoryInfo          : ObjectNotFound: (python:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

> where.exe python
INFO: Could not find files for the given pattern(s).

Затем я проверил свои переменные пути пользователя, и я нашел ничего, кроме единой записи, сидящей там в течение неизвестного количества времени.

Нет питона! Но поскольку это путь для всех приложений, установленных в магазине Microsoft, я взял на себя инициативу, чтобы перейти к C: \ users \ naufan rusyda faikar \ appdata \ local \ microsoft \ windowsapps Использование File Explorer.

Оттуда я обнаружил, что это должно быть Python3.9 с конкретной версией в качестве суффикса. Хорошо, у меня не было проблем с этим.

> where.exe python3.9
C:\Users\Naufan Rusyda Faikar\AppData\Local\Microsoft\WindowsApps\python3.9.exe

> where.exe pip
C:\Users\Naufan Rusyda Faikar\AppData\Local\Microsoft\WindowsApps\pip.exe

Перед установкой пакетов я использовал для обновления Pip Анкет Несмотря на мой успех, предупреждение преследовало день.

> python3.9 -m pip install --upgrade pip
Collecting pip
  Downloading pip-20.2.4-py2.py3-none-any.whl (1.5 MB)
     |████████████████████████████████| 1.5 MB 525 kB/s
Installing collected packages: pip
  WARNING: The scripts pip.exe, pip3.9.exe and pip3.exe are installed in 'C:\Users\Naufan Rusyda Faikar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\Scripts' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-20.2.4

Вы понимаете, где находится несоответствие? Позвольте мне сделать это яснее.

> where.exe pip
C:\Users\Naufan Rusyda Faikar\AppData\Local\Microsoft\WindowsApps\pip.exe

> pip --version
pip 20.2.4 from C:\Users\Naufan Rusyda Faikar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\pip (python 3.9)

где. Exe Команда не знала о том, где «полезно» пип команда. Даже если бы я стал более конкретным.

> where.exe python3.9
C:\Users\Naufan Rusyda Faikar\AppData\Local\Microsoft\WindowsApps\python3.9.exe

> python3.9 -m pip --version
pip 20.2.4 from C:\Users\Naufan Rusyda Faikar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\pip (python 3.9)

> & 'C:\Users\Naufan Rusyda Faikar\AppData\Local\Microsoft\WindowsApps\pip.exe' --version
pip 20.2.4 from C:\Users\Naufan Rusyda Faikar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\pip (python 3.9)

Тогда я только что понял, что все файлы в рамках C: \ users \ naufan rusyda faikar \ appdata \ local \ microsoft \ windowsapps являются «ярлыками» для фактического исполняемого файла. Мне все равно, потому что я получил последнюю версию пип !

Затем я хотел создать виртуальную среду для тестирования.

> pip install virtualenv
...

> virtualenv venv
virtualenv : The term 'virtualenv' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ virtualenv venv
+ ~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (virtualenv:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Подожди, почему! Меня это сбило с толку. Пакет вошел в то, что в моем случае вошел в %Userprofile%\ appdata \ local \ packages \ pythonsoftwarefoundation. Python.3.9_qbz5n2kfra8p0 \ localcache \ local-packages \ python39 \ scripts Анкет Хорошо, давай пойдем другим путем.

> python3.9 -m virtualenv venv
RuntimeError: failed to build image pip because:
Traceback (most recent call last):
  File "C:\Users\Naufan Rusyda Faikar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\virtualenv\seed\embed\via_app_data\via_app_data.py", line 57, in _install
    installer.build_image()
  File "C:\Users\Naufan Rusyda Faikar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\virtualenv\seed\embed\via_app_data\pip_install\base.py", line 54, in build_image
    zip_ref.extractall(str(self._image_dir))
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.240.0_x64__qbz5n2kfra8p0\lib\zipfile.py", line 1633, in extractall
    self._extract_member(zipinfo, path, pwd)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.240.0_x64__qbz5n2kfra8p0\lib\zipfile.py", line 1687, in _extract_member
    open(targetpath, "wb") as target:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\Naufan Rusyda Faikar\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\\LocalCache\\Local\\pypa\\virtualenv\\wheel\\3.9\\image\\1\\CopyPipInstall\\pip-20.2.4-py2.py3-none-any\\pip\\_vendor\\urllib3\\packages\\ssl_match_hostname\\_implementation.py'

Хм!? Microsoft делает вещи сложными! Я прочитал из страница выпуска GitHub что я, скорее всего, только что достиг предела длинного пути Windows. Но мне пришлось остановиться здесь, чтобы этот пост не был слишком долго обиды.

Обратите внимание, что если вы хотите установить Python в Windows, я бы порекомендовал пойти с первым вариантом. Как вы можете видеть в приложении ниже, установщик дает вам возможность отключить предел длины пути.

На самом деле, он будет запускать аналогичную команду в PowerShell, как показано ниже.

> & 'C:\Users\Naufan Rusyda Faikar\AppData\Local\Programs\Python\Python39\pythonw.exe' -c "import winreg; winreg.SetValueEx(winreg.CreateKey(winreg.HKEY_LOCAL_MACHINE, r'SYSTEM\CurrentControlSet\Control\FileSystem'), 'LongPathsEnabled', None, winreg.REG_DWORD, 1)"

Вы можете читать из Официальный сайт по этому конкретному вопросу. Надеюсь, вы поймете эту идею. Спасибо за чтение!

Оригинал: “https://dev.to/naruaika/why-i-didn-t-install-python-from-the-microsoft-store-5cbd”