Conda ile Python 3.6'ya nasıl yükseltebilirim?


172

Conda paket yönetiminde yeniyim ve kodumda f-dizeleri kullanmak için Python'un en son sürümünü almak istiyorum. Şu anda benim sürümüm ( python -V):

Python 3.5.2 :: Anaconda 4.2.0 (x86_64)

Python 3.6'ya nasıl yükseltebilirim?


İkinci cevap, bence, daha iyi cevap, özellikle de en son ve en büyüğün sürekli olarak güncellendiği "ana" / "varsayılan" bir ortama sahip olanlar için.
ericmjl

Yanıtlar:


249

Anaconda dahili olarak pitonu 3.6'ya güncellemedi.

a) Yöntem 1

  1. Güncellemek istiyorsanız şunu yazacaksınız: conda update python
  2. Anaconda türünü güncellemek için conda update anaconda
  3. 3.5 ila 3.6 gibi büyük python sürümleri arasında yükseltme yapmak istiyorsanız,

    conda install python=$pythonversion$

b) Yöntem 2 - Yeni bir ortam oluşturma (Daha İyi Yöntem)

conda create --name py36 python=3.6

c) Mutlak son python'u elde etmek için (yazma sırasında 3.6.5)

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

Sen tüm bu görebilirsiniz burada

Ayrıca, güç yükseltme için buna bakın

DÜZENLEME: Anaconda şimdi Python 3.6 sürümüne sahip burada


18
Continuum, conda'nın çalışma şeklini değiştirmedikçe, ana Python sürümlerini yeni sürüme geçiremezsiniz conda update python. Buraya bakın: conda.pydata.org/docs/py2or3.html#update-or-upgrade-python
darthbith

14
conda install python = $ pythonversion $ örneğin conda install python = 3.6
Tim Richardson

11
conda update pythonbeni 3.6.5'ten 3.7.0'a götürdü. Temiz!
fredrik

Cevapta bir yazım hatası var, Yöntem 1.3. Olması gereken conda install python=$pythonversion$tek eşittir işareti ile.
eze1981

FYI yöntemi a) venv içinde herhangi bir bağımlılığı bozmadığı sürece farklı python sürümleri arasında geçiş yapmak için çalışır
Spcogg ikinci

41

Yeni bir ortam oluşturmak python 3.6'yı kuracaktır:

$ 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 

2
Conda kurulumunuz Python 2.7 içinse, conda create 2.7 sürümü oluşturur. Komutu conda create --name 3point6 python=3( =3sonunda ekleme) olarak değiştirmek python3 sürümünü yapar.
Jonah Graham

1
Gerçekten olacak. Cevabımı python 3.6'yı belirtmek için değiştirdim!
David Stansby

26

Bu sayfayı Anaconda'yı Python'un daha yeni bir sürümüne (Anaconda 4.0+'den) yükseltmek için ayrıntılı talimatlarla buldum . İlk,

conda update conda
conda remove argcomplete conda-manager

Ayrıca conda removeresmi listede olmayan bazı paketlere de ihtiyacım vardı :

  • backports_abc
  • güzel-çorba
  • alev çekirdekli

Sisteminizde kurulu paketlere bağlı olarak, ek UnsatisfiableErrorhatalar alabilirsiniz - bu paketleri kaldırma listesine eklemeniz yeterlidir. Ardından, Python sürümünü yükleyin,

conda install python==3.6

bu biraz zaman alır, bundan sonra bir mesaj gösterilir conda install anaconda-client, bu yüzden

conda install anaconda-client

zaten orada olduğunu söyledi. Son olarak, talimatları takip ederek,

conda update anaconda

Bunu Windows 10 komut isteminde yaptım, ancak Mac OS X'te işler benzer olmalı.


18

Geçmişte, yerinde yükseltmeyi denemek oldukça zor buldum.

Not: Anaconda için kullanım durumum, hepsi bir arada Python ortamı olarak. Ayrı sanal ortamlarla uğraşmıyorum. Ortam condaoluşturmak için kullanıyorsanız , bu yıkıcı olabilir çünkü dizininizde condasabit bağlantılı ortamlar oluşturur Anaconda/envs.

Dolayısıyla, ortam kullanıyorsanız, öncelikle ortamlarınızı dışa aktarmak isteyebilirsiniz . Ortamınızı etkinleştirdikten sonra aşağıdaki gibi bir şey yapın:

conda env export > environment.yml

Ortamlarınızı yedekledikten sonra (gerekirse) eski Anaconda'nızı kaldırabilirsiniz (Anaconda'yı kaldırmak çok basittir):

$ rm -rf ~/anaconda3/

ve yeni Anaconda'yı (ör. Linux, 64 bit) indirerek değiştirin:

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

( daha yenisi için buraya bakınız ),

ve ardından yürütün:

$ bash Anaconda3-4.3.0-Linux-x86_64.sh 

11

Ben kullanıyorum , Mac OS Mojave

Bu 4 adım benim için çalıştı.

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

0

Bulduğum en iyi yöntem:

source activate old_env
conda env export > old_env.yml

Sonra böyle bir şeyle işleyin:

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)

ardından yeni ortam adınızı yansıtacak şekilde ilk ( name: ...) ve son satırı ( prefix: ...) elle düzenleyin ve çalıştırın:

conda env create -f new_env.yml

sabitlenmiş sürümün old_envyeni python sürümü için uyumsuz veya eksik olduğu birkaç paketin sürüm pinini manuel olarak kaldırmanız veya değiştirmeniz gerekebilir .

Keşke yerleşik, daha kolay bir yol olsaydı ...

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.