Как обновить установку Python в Windows 10?

112

У меня установлен Python 2.7.11 на одной из моих станций LAB. Я хотел бы обновить Python как минимум до 3.5.

Как мне это сделать? Должен ли я предпочесть полностью удалить 2.7.11, а не установить новый? Есть ли способ его обновить? Обновление - хорошая идея?

Моше С.
источник
Может быть, этот старый пост может вам помочь? stackoverflow.com/questions/15102943/how-to-update-python Br.
MikeL
python2 и python3 следует рассматривать как разные языки, например, C # отличается от C ++
WhatsThePoint

Ответы:

97

Каждая дополнительная версия Python, то есть любая версия 3.x и 2.x, будет устанавливаться на вашем компьютере параллельно с другими версиями. Только патч-версии обновят существующие установки.

Поэтому, если вы хотите сохранить установленный Python 2.7, просто позвольте ему и установите новую версию с помощью установщика. Если вы хотите избавиться от Python 2.7, вы можете удалить его до или после установки новой версии - в этом нет никакой разницы.

Текущие установки Python 3 поставляются с программой py.exeзапуска, которая по умолчанию устанавливается в системный каталог. Это делает его доступным из PATH, поэтому вы можете автоматически запускать его из любой оболочки, просто используя pyвместо pythonэтого команду. Это избавляет вас от необходимости самостоятельно помещать текущую установку Python в PATH. Таким образом, вы можете легко установить несколько версий Python одновременно, не мешая друг другу. При запуске просто используйте py script.pyвместо python script.pyиспользования пусковую установку. Вы также можете указать версию, например, py -3или py -3.6для запуска определенной версии, в противном случае программа запуска будет использовать текущую версию по умолчанию (обычно это последняя версия 3.x).

Используя средство запуска, вы также можете запускать скрипты Python 2 (синтаксис которых часто несовместим с Python 3), если вы решите сохранить установку Python 2.7. Просто используйте py -2 script.pyдля запуска скрипта.


Что касается пакетов PyPI, каждая установка Python поставляется с собственной папкой, в которую устанавливаются модули. Поэтому, если вы устанавливаете новую версию и хотите использовать модули, которые вы установили для предыдущей версии, вам придется сначала установить их для новой версии. Текущие версии установщика также предлагают установить pip; он включен по умолчанию, так что у вас уже есть pipдля каждой установки. Если вы явно не добавите установку Python в PATH, вы не можете просто использовать pip. К счастью, вы также можете просто использовать py.exeдля этого программу запуска: py -m pipзапускается pip. Так, например, чтобы установить Beautiful Soup для Python 3.6, вы можете запустить py -3.6 -m pip install beautifulsoup4.

совать
источник
1
Как бы вы порекомендовали сделать это на станции, которую я сейчас использую для разработки скриптов? Кстати, у меня 3.5.2 (Windows 7 64-бит)
Моше С.
1
Просто установите новую версию бок о бок. Удалять старую версию не нужно. Наличие старой версии может даже помочь вам перенести существующие скрипты с Python 2 на Python 3, чтобы вы по-прежнему могли запускать оригинальные.
совать
1
Установщик предоставит вам возможность установить PATH для вас, поэтому вам, возможно, не придется делать это вручную. И да, вашу IDE нужно обновить.
совать
1
также py -3.7-64илиpy -3.7-32
noobninja 06
1
Примечание: py это программа запуска Python для Windows . Или см. PEP 397, который определяет это. Он не устанавливается для Linux / Mac.
LightCC
40

Если вы обновляете любую версию Python с 3.xy до 3.xz (патч), просто перейдите на страницу загрузок Python, получите последнюю версию и начните установку. Поскольку на вашем компьютере уже установлен Python, установщик предложит вам «Обновить сейчас». Нажмите на эту кнопку, и она заменит существующую версию новой. Вам также придется перезагрузить компьютер после установки.

введите описание изображения здесь

Если вы обновляетесь с 3.x до 3.y (незначительная), вам будет предложено «Установить сейчас». В этом случае вы не выполняете обновление, а устанавливаете новую версию Python. На вашем компьютере может быть установлено несколько версий. Они будут расположены в разных каталогах. Если на вашем компьютере установлено более одной версии Python, вам нужно будет использовать py lanucher для запуска определенной версии Python.

Например:

py -3,7

или

ру -3,8

Убедитесь, что на вашем компьютере установлена ​​программа запуска py . Он будет установлен автоматически, если вы используете настройки установщика Windows по умолчанию. Вы всегда можете проверить это, щелкнув ссылку «Настроить установку» в окне установки.

Если на вашем компьютере установлено несколько версий Python и у вас есть проект, в котором используется предыдущая версия Python с использованием виртуальной среды, например (venv), вы можете обновить Python только в этом venv, используя:

python -m venv --upgrade "путь к виртуальной среде"

Например, у меня есть Python 3.7 в моей виртуальной среде ./venv, и я хотел бы обновить venv до Python 3.8, я бы сделал следующее

python -m venv --upgrade ./venv

Влад Безден
источник
1
@ MosheS. Вы можете получить список устаревших пакетов, используя следующую команду: pip list --outdated, а затем обновить каждый пакет с помощью python -m pip install --upgrade <ваш пакет>
Влад Безден
5
Переход с 3.7.2 на 3.7.4 (64 бит) в Windows 10 Я этого не вижу, я вижу «Установить сейчас», где вы видите «Обновить сейчас»
Дамблдад
3
Я только что перешел с 3.7.3 на 3.7.5 и получил сообщение «Обновить сейчас». Если бы я попытался обновить версию с 3.7.3 до 3.8, то получил бы «Установить сейчас».
Тьяго Мартинс Перес 李大仁
1
@Suncatcher, вы правы, это то, что я описал в разделе «Если вы хотите перейти с 3.x на 3.y, то ...». Прочтите, пожалуйста, выше.
Влад Безден,
1
@Suncatcher, спасибо за отзыв. Обновил описание.
Влад Безден,
39

Установка / обновление Python с помощью диспетчера пакетов Windows Chocolatey

Допустим, у вас есть Python 2.7.16:

    C:\Windows\system32>python --version
    python2 2.7.16

... и вы хотите перейти на (текущую) версию 3.xy. Существует простой способ установить параллельную установку Python 3.xy с помощью инструмента управления пакетами Windows.

Теперь, когда в современной Windows есть управление пакетами, точно так же, как в дистрибутивах Debian Linux есть apt-get, а в RedHat есть dnf: мы можем заставить его работать на себя! Это называется Шоколадный .

Что такое шоколадный?

Chocolatey - это инструмент командной строки с поддержкой сценариев, основанный на .NET 4.0 и диспетчере пакетов nuget, встроенном в Visual Studio.

Если вы хотите узнать о Chocolatey и о том, почему его использовать, что может оказаться особенно полезным для некоторых читателей, перейдите на https://chocolatey.org/docs/why.

Установка Chocolatey

Чтобы получить диспетчер пакетов Chocolatey, выполните процедуру, описанную на странице https://chocolatey.org/docs/installation#installing-chocolatey ,

Я резюмирую это для вас здесь. Есть два основных варианта: использовать командную строку или командную строку PowerShell.

CMD Быстрая шоколадная установка

Запустите административную командную строку. В Windows 10 для этого:

  • Windows+R
  • Введите cmd
  • Нажмите ctrl+ shift+Enter

Если у вас нет прав администратора в системе, перейдите на сайт Chocolatey . Возможно, вам не совсем повезло, и вы сможете выполнить ограниченную локальную установку, но я не буду здесь это рассматривать.

  • Скопируйте приведенную ниже строку в командную строку и введите Enter:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

Chocolatey будет загружена и установлена ​​для вас, как показано ниже:

Getting latest version of the Chocolatey package for download.
Getting Chocolatey from https://chocolatey.org/api/v2/package/chocolatey/0.10.11.
Downloading 7-Zip commandline tool prior to extraction.
Extracting C:\Users\blahblahblah\AppData\Local\Temp\chocolatey\chocInstall\chocolatey.zip to C:\Users\blahblahblah\AppData\Local\Temp\chocolatey\chocInstall...
Installing chocolatey on this machine
Creating ChocolateyInstall as an environment variable (targeting 'Machine')
  Setting ChocolateyInstall to 'C:\ProgramData\chocolatey'
WARNING: It's very likely you will need to close and reopen your shell
  before you can use choco.
Restricting write permissions to Administrators
We are setting up the Chocolatey package repository.
The packages themselves go to 'C:\ProgramData\chocolatey\lib'
  (i.e. C:\ProgramData\chocolatey\lib\yourPackageName).
A shim file for the command line goes to 'C:\ProgramData\chocolatey\bin'
  and points to an executable in 'C:\ProgramData\chocolatey\lib\yourPackageName'.

Creating Chocolatey folders if they do not already exist.

WARNING: You can safely ignore errors related to missing log files when
  upgrading from a version of Chocolatey less than 0.9.9.
  'Batch file could not be found' is also safe to ignore.
  'The system cannot find the file specified' - also safe.
chocolatey.nupkg file not installed in lib.
 Attempting to locate it from bootstrapper.
PATH environment variable does not have C:\ProgramData\chocolatey\bin in it. Adding...
WARNING: Not setting tab completion: Profile file does not exist at 'C:\Users\blahblahblah\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'.
Chocolatey (choco.exe) is now ready.
You can call choco from anywhere, command line or powershell by typing choco.
Run choco /? for a list of functions.
You may need to shut down and restart powershell and/or consoles
 first prior to using choco.
Ensuring chocolatey commands are on the path
Ensuring chocolatey.nupkg is in the lib folder

Либо Выход УМК строки или введите следующую команду , чтобы перезагрузить переменные окружения:

refreshenv

Установка PowerShell Chocolatey

Если вы предпочитаете PowerShell командной строке, вы можете сделать это прямо оттуда, однако вам нужно будет указать PowerShell для запуска с правильной политикой выполнения сценария, чтобы заставить его работать. В Windows 10 самый простой способ, который я нашел для этого, - это ввести следующее в строку поиска Cortana рядом с кнопкой Windows:

PowerShell.exe

Затем щелкните правой кнопкой мыши пункт «Лучшее совпадение» во всплывающем меню и выберите «Запуск от имени администратора».

Теперь, когда вы находитесь в PowerShell и, надеюсь, работаете с правами администратора, выполните следующие действия, чтобы установить Chocolatey:

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

PowerShell скачает за вас Chocolatey и запустит установку. Это займет всего несколько минут. Он выглядит точно так же, как установка CMD, за исключением, возможно, необычного цветного текста.

Либо выйдите из PowerShell, либо введите следующую команду, чтобы перезагрузить переменные среды:

refreshenv

Обновление Python

Команда choco одинакова независимо от того, используете ли вы PowerShell или командную строку. Запустите свой любимый, используя приведенные выше инструкции. Я буду использовать командную строку администратора:

C:\WINDOWS\system32>choco upgrade python -y

По сути, chocolatey скажет вам: «Эй, Python не установлен», поскольку вы используете версию 2.7.x, и он рассматривает версию 2.7 как полностью отдельную. Он только собирается дать вам самую последнюю версию, 3.xy (по состоянию на момент написания данной статьи 3.7.2, но это изменится в течение нескольких месяцев):

Chocolatey v0.10.11
Upgrading the following packages:
python
By upgrading you accept licenses for the packages.
python is not installed. Installing...

python3 v3.x.y [Approved]
python3 package files upgrade completed. Performing other installation steps.
Installing 64-bit python3...
python3 has been installed.
Installed to: 'C:\Python37' 
  python3 can be automatically uninstalled.
Environment Vars (like PATH) have changed. Close/reopen your shell to
 see the changes (or in powershell/cmd.exe just type `refreshenv`).
 The upgrade of python3 was successful.
  Software installed as 'exe', install location is likely default.

python v3.x.y [Approved]
python package files upgrade completed. Performing other installation steps.
 The upgrade of python was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

Chocolatey upgraded 2/2 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

Либо выйдите из командной строки cmd / Powershell и введите ее повторно, либо используйте команду refreshenv и введите py --version

C:\Windows\System32>refreshenv
Refreshing environment variables from registry for cmd.exe. Please wait...Finished..

C:\Windows\system32>py --version
Python 3.7.2

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

py -2
Python 2.7.16 (v2.7.16:413a49145e, Mar  4 2019, 01:37:19) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

C:\>py -3
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>exit()
C:\>

Отсюда я предлагаю вам использовать утилиту Python pip для установки любых пакетов, которые вам нужны. Например, допустим, вы хотите установить Flask. Команды ниже: сначала обновите pip, затем установите Flask.

C:\>py -3 -m pip install --upgrade pip
Collecting pip
  Downloading https://files.pythonhosted.org/packages/d8/f3/413bab4ff08e1fc4828dfc59996d721917df8e8583ea85385d51125dceff/pip-19.0.3-py2.py3-none-any.whl (1.4MB)
    100% |████████████████████████████████| 1.4MB 1.6MB/s
Installing collected packages: pip
  Found existing installation: pip 18.1
    Uninstalling pip-18.1:
      Successfully uninstalled pip-18.1
Successfully installed pip-19.0.3

c:\>py -3 -m pip install Flask

... сделает свое дело. Удачного питонинга!

ггариепы
источник
Краткая версия ответа - установите Chocolatey, а затем обновите его из командной строки, затем выполните choco install python, он установит последнюю версию python. Снова выполните команду refreshenv в cmd, и вы должны запустить последнюю версию python из вашего cmd.
Себастьян
Получение этой ошибки в CMD и исключении POWERSHELL, вызывающем «DownloadString» с аргументом (ами) «1»: «Базовое соединение было закрыто: при отправке произошла непредвиденная ошибка». В строке: 1 символ: 104 + Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient) .DownloadString <<<< (' chocolatey.org/install.ps1' )) + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: DotNetMethodException
trustory
У меня есть Windows 7, любая помощь по обновлению до python 3 с python2 кажется, что chocoaltely не работает.
доверительное управление
4

Python 2.x и Python 3.x разные. Если вы хотите загрузить более новую версию Python 2, вы можете просто загрузить и установить более новую версию.

Если вы хотите установить Python 3, вы можете установить Python 3 отдельно, а затем изменить путь для Python 2.x на Python 3.x в Панели управления> Все элементы панели управления> Система> Расширенные настройки системы> Переменные среды.

Джулиан Чан
источник
Я предпочитаю полностью удалить Python 2.7.11, поскольку не планирую его поддерживать. Так что я должен полностью удалить его. Правильно ? В «Программы и компоненты» не отображался Python, поэтому я не знаю, как его удалить. Стоит ли использовать pip и как? Хорошая идея - просто удалить папку Python? А как насчет всех старых пакетов, которые были установлены вместе с ним (если они были), как я могу их удалить?
Моше С.
@MosheS. Я не думаю, что это действительно занимает так много места, но если вы действительно хотите очистить, то непременно. Все они должны находиться в одной папке, вы, вероятно, можете удалить их из панели управления Программы и компоненты. Оба моих Python 2.7 и 3.4 находятся там. Удаление оттуда приведет к удалению всех пакетов. Если вы действительно не можете его найти, вы можете попробовать просто удалить всю папку. Когда вы загружаете Python 3 и если он не работает, отредактируйте путь, как я ответил выше, это, скорее всего, будет основной проблемой, если таковая имеется.
Джулиан Чан
3

В 2019 можно установить с помощью шоколадки . Откройте ваш cmd или powershell, введите «choco install python».

roscoe_x
источник