Hoe upgrade ik naar Python 3.6 met Conda?

Ik ben nieuw in Conda Package Management en ik wil de nieuwste versie van Python krijgen om F-snaren in mijn code te gebruiken. Momenteel is mijn versie (python -V):

Python 3.5.2 :: Anaconda 4.2.0 (x86_64)

Hoe zou ik upgraden naar Python 3.6?


Antwoord 1, Autoriteit 100%

Anaconda heeft Python niet intern bijgewerkt tot 3.6.

a) Methode 1

  1. Als u wilt updaten, typt u conda update python
  2. om Anaconda Type bij te werken conda update anaconda
  3. Als u wilt upgraden tussen de belangrijkste Python-versie zoals 3.5 tot 3.6, moet u

    doen

    conda install python=$pythonversion$
    

b) Methode 2 – Maak een nieuwe omgeving (betere methode)

conda create --name py36 python=3.6

c) om de absoluut nieuwste python te krijgen (3.6.5 op het moment van schrijven)

conda create --name py365 python=3.6.5 --channel conda-forge

U kunt dit alles zien van

Raadpleeg deze ook voor Force upgrading

EDIT: Anaconda heeft nu een Python 3.6-versie hier


Antwoord 2, Autoriteit 14%

Een nieuwe omgeving maken, installeert Python 3.6:

$ conda create --name 3point6 python=3.6
Fetching package metadata .......
Solving package specifications: ..........
Package plan for installation in environment /Users/dstansby/miniconda3/envs/3point6:
The following NEW packages will be INSTALLED:
    openssl:    1.0.2j-0     
    pip:        9.0.1-py36_1 
    python:     3.6.0-0      
    readline:   6.2-2        
    setuptools: 27.2.0-py36_0
    sqlite:     3.13.0-0     
    tk:         8.5.18-0     
    wheel:      0.29.0-py36_0
    xz:         5.2.2-1      
    zlib:       1.2.8-3 

Antwoord 3, autoriteit 9%

Ik heb deze pagina gevonden met gedetailleerde instructies om Anaconda te upgraden naar een belangrijke nieuwere versie van Python (van Anaconda 4.0+). Ten eerste,

conda update conda
conda remove argcomplete conda-manager

Ik moest ook conda removeenkele pakketten die niet op de officiële lijst staan:

  • backports_abc
  • beautiful-soup
  • blaze-core

Afhankelijk van de pakketten die op uw systeem zijn geïnstalleerd, kunt u extra UnsatisfiableError-fouten krijgen – voeg die pakketten gewoon toe aan de verwijderlijst. Installeer vervolgens de versie van Python,

conda install python==3.6

wat even duurt, waarna een bericht werd gegeven aan conda install anaconda-client, dus dat deed ik

conda install anaconda-client

die zei dat het er al is. Tot slot, volg de aanwijzingen,

conda update anaconda

Ik deed dit in de opdrachtprompt van Windows 10, maar in Mac OS X zou alles hetzelfde moeten zijn.


Antwoord 4, autoriteit 6%

In het verleden vond ik het nogal moeilijk om te proberen ter plaatse te upgraden.

Opmerking: mijn use-case voor Anaconda is als een alles-in-één Python-omgeving. Ik hou me niet bezig met aparte virtuele omgevingen. Als je condagebruikt om omgevingen te maken, kan dit destructief zijn omdat condaomgevingen maakt met harde links in je Anaconda/envs-directory.

Dus als je omgevingen gebruikt, wil je misschien eerst exporteer uw omgevingen. Nadat je je omgeving hebt geactiveerd, doe je zoiets als:

conda env export > environment.yml

Na het maken van een back-up van uw omgevingen (indien nodig), kunt u uw oude Anaconda verwijderen (het is heel eenvoudig om Anaconda te verwijderen):

$ rm -rf ~/anaconda3/

en vervang het door de nieuwe Anaconda te downloaden, b.v. Linux, 64 bit:

$ cd ~/Downloads
$ wget https://repo.continuum.io/archive/Anaconda3-4.3.0-Linux-x86_64.sh 

(zie hier voor een recentere),

en dan uitvoeren:

$ bash Anaconda3-4.3.0-Linux-x86_64.sh 

Antwoord 5, autoriteit 5%

Ik gebruik een Mac OS Mojave

Deze 4 stappen werkten voor mij.

  1. conda update conda
  2. conda install python=3.6
  3. conda install anaconda-client
  4. conda update anaconda

Antwoord 6

Dit is hoe ik erin slaag om (aangezien er momenteel geen directe ondersteuning is – in de toekomst zal het zeker zijn) python 3.9 in anaconda en Windows 10
Opmerking:ik had extra pakketten nodig, dus installeer ze, installeer alleen wat je nodig hebt

conda create --name e39 python=3.9 --channel conda-forge

Bijwerken

Python 3.9 is beschikbaar met conda, gebruik onderstaande opdracht

conda create –name python=3.9

En het zal eenvoudig uw virtuele python 3.9-omgeving creëren.


Antwoord 7

De enige oplossing die werkte, was het maken van een nieuwe conda-omgeving met de naam die u wilt (u zult helaas de oude verwijderen om de naam te behouden). Maak vervolgens een nieuwe env met een nieuwe python-versie en voer uw install.sh-script opnieuw uit met de conda/pip-installaties (of het yaml-bestand of wat u ook gebruikt om aan uw vereisten te voldoen):

conda remove --name original_name --all
conda create --name original_name python=3.8
sh install.sh  # or whatever you usually do to install dependencies

het doen van conda install python=3.8werkt niet voor mij. En waarom wil je 3.6? Ga vooruit met het woord 😉


Opmerking hieronder werkt niet:

Als u de conda-versie van uw vorige env wilt bijwerken, kunt u ook het volgende doen (ingewikkelder dan het zou moeten zijn omdat je kunt envs niet hernoemen in conda):

  1. maak een tijdelijke nieuwe locatie voor uw huidige omgeving:
conda create --name temporary_env_name --clone original_env_name
  1. verwijder de originele env (zodat de nieuwe env die naam kan hebben):
conda deactivate
conda remove --name original_env_name --all # or its alias: `conda env remove --name original_env_name`
  1. maak vervolgens de nieuwe lege env met de python-versie die je wilt en kloon de originele env:
conda create --name original_env_name python=3.8 --clone temporary_env_name

Antwoord 8

Beste methode die ik heb gevonden:

source activate old_env
conda env export > old_env.yml

Verwerk het dan met zoiets als dit:

with open('old_env.yml', 'r') as fin, open('new_env.yml', 'w') as fout:
    for line in fin:
        if 'py35' in line:  # replace by the version you want to supersede
            line = line[:line.rfind('=')] + '\n'
        fout.write(line)

bewerk vervolgens handmatig de eerste (name: ...) en laatste regel (prefix: ...) om uw nieuwe omgevingsnaam weer te geven en voer uit:

conda env create -f new_env.yml

mogelijk moet u de versie-pin handmatig verwijderen of wijzigen van een paar pakketten waarvoor de vastgezette versie van old_envincompatibel is of ontbreekt voor de nieuwe python-versie.

Ik wou dat er een ingebouwde, gemakkelijkere manier was…


Antwoord 9

Als je de Python-versie binnen je bestaande omgeving wilt upgraden, activeer deze dan eerst met conda activate <env_name>en doe dan:

conda install -c anaconda python=<version>

Mogelijk moet u de afhankelijkheden ook bijwerken met

conda update --all

Other episodes