Python 3.7'den 3.6'ya nasıl düşürülür


100

Tensorflow'u kurmaya çalışıyorum ama bir Python 3.6 kurulumuna ihtiyacı var ve sadece Python 3.7 yüklüyüm. Brew ve pyenv kullanarak geçiş yapmaya çalıştım ama işe yaramıyor.

Bu sorunu çözmenin bir yolunu bilen var mı?


4
Anaconda kullanmanızı tavsiye ederim . Ardından her yeni proje için yeni bir ortam oluşturun ve kullanmadan önce etkinleştirin. Sizin durumunuzda conda create -n myenv python=3.6vesource activate myenv
Canh


1
Tensorflow'u yükseltin. Tensorflow 1.14 ve 1.15, Python 3.7'yi (ve öncesi) destekler ve tensorflow 2.2, Python 3.8
Boris

Yanıtlar:


40
$ brew unlink python
$ brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/e128fa1bce3377de32cbf11bd8e46f7334dfd7a6/Formula/python.rb
$ brew switch python 3.6.5
$ pip install tensorflow

2
Bu harika çalışıyor ancak pip install tensorflowbir virtualenv veya conda env oluşturmadan önce bunu etkinleştirmenizi ve sonunda kullanmanızı öneririmpip install tensorflow
Diego Aguado

Daha önce bu python sürümüne sahipseniz ve daha yüksek sürüme yükselttiyseniz (ve $ brew cleanupkomut kullanmadıysanız) ilk iki satırı atlayabilirsiniz
Mykola Zotko

3
Demlemek nedir? Apt kullanamaz mıyım?
Jamie Hutber

@JamieHutber brew.sh , orijinal olarak macOS için yapılmış bir paket yöneticisidir, ancak günümüzde Linux'u da desteklemektedir, bkz. Docs.brew.sh/Homebrew-on-Linux . Eğer kullanmanız gerekiyorsa apteklemeyi deneyebilirsiniz deadsnakesPPA olduğu paketler eski piton sürümleri: launchpad.net/~deadsnakes/+archive/ubuntu/ppa , ancak yalnızca çalışır Uzun Süreli Destek (LTS) Ubuntu sürümleri vardır, 14.04, 16.04, 18.04 ve 20.04 , bu yorumu 2020'de yazıyorum.
Boris

Dikkat et. Bu her şeyi
Josh Wolff

32

Anaconda ile çalışıyorsanız, o zaman

conda install python=3.5.0
# or maybe 
conda install python=2.7.8
# or whatever you want....

çalışabilir.


Bu işe yaradı ve sorunumu çözdü. Bu, yalnızca eski Python sürümünü yüklemekle kalmadı, aynı zamanda sürümü düşürdü.
stok

3
condaLinux kullanmadan başka bir çözüm var mı?
Dentrax

2
I get UnsatisfiableError:The following specifications were found to be in conflict: - python=3.5.0 - ssl_match_hostname -> python[version='>=2.7,<2.8.0a0'] -> readline=7 - ssl_match_hostname -> python[version='>=2.7,<2.8.0a0'] -> tk=8.6
MrMartin

13

sanal bir ortam oluşturun, kurun ve python 3.6.5'e geçin

$ conda create -n tensorflow python=3.7
$ conda activate tensorflow
$ conda install python=3.6.5
$ pip install tensorflow

tensorflow'u kullanmak istediğinizde ortamı etkinleştirin



7

Conda kullanarak bir python sanal ortamı oluşturun ve ardından tensorflow'u kurun:

$ conda create -n [environment-name] python=3.6
# it may ask for installing python-3.6 if you don't have it already. Type "y" to proceed...
$ activate [environment-name]
$ pip install tensorflow

Bundan böyle, tensorflow'u her kullanmak istediğinizde ortamı etkinleştirebilirsiniz .

Conda paket yöneticiniz yoksa, önce buradan indirin: https://www.anaconda.com/distribution


Merhaba @Seyed, aynı sorunu yaşıyorum, varsayılan casusum 3.7 ile açılıyor, ancak araçları-> conda python 3.6.9 ortamımın tercihlerini açsam da, casuslukta nasıl geçeceğim, anaconda gezgini casus için başlatma göstermiyor?
hanzgs

6

İşte Python'un çalıştığı işletim sistemi çeşitliliği için farklı çözümleri özetleyen kanonik bir özet. Aşağıdakiler Microsoft Windows , Linux , macOS ve Misc için olasılıklardır .

Bahsedildiği gibi bunlar sadece olasılıklardır - hiçbir şekilde tam bir listeye sahip olduğumu iddia etmiyorum.


Microsoft Windows

seçenek 1

Genel olarak, sanal ortamların kullanılması önerilir (resmi Python belgelerine bakmanızı şiddetle tavsiye ederim ). Bu yaklaşımla, projeye özgü Python sürümlerini (ve ayrıca kitaplıkları) kolayca kurabilirsiniz. Kolayca yönetilebilir ve en iyi bölüm: İnternette buna nasıl yaklaşılacağına dair birçok öğretici var:

1.) Komut istemini ("cmd") açın ve girin pip install virtualenv.

2.) İstediğiniz Python sürümünü https://www.python.org/downloads/release aracılığıyla kurun ; Unutmayın: eklemeyinPATH !

3.) : istemi komutuyla içine yazın virtualenv \path\to\env -p \path\to\python_install.exeise \path\to\envolmalıdır sanal ortam olacak yolu ve\path\to\python_install.exe senin taze (muhtemelen) Python sürümü Oturuyor yüklü bir.

4.) Bitti! Artık bir sanal ortam kurulumuna sahipsiniz! Şimdi, sanal ortamı etkinleştirmek için \path\to\env\Scripts\activate.bat. (cf. bu web sitesi veya resmi bir Python kılavuzu )

seçenek 2

Temel seçenek, istenmeyen Python sürümünü kaldırmak ve tercih edilen sürümü https://www.python.org/downloads/ adresinden yeniden yüklemek olacaktır . "Eski" sürümü kaldırmak için Control Panel-> "Uninstall a program"-> Search for "Python" -> Right-click on the Python name-> seçeneğine gidin Uninstall. Python'un genellikle depolanan bir PATH değişkenine sahip olduğunu unutmayın, bu nedenle onu da kaldırmanız gerekir - Bunun için aşağıdaki bağlantıları kontrol edin:

Şimdi, Python'un depolandığı yerde kalan dosya olup olmadığını iki kez kontrol edin. Genellikle, ya hiç Python dosyaları bulabilirsiniz C:\Program Files (x86)\Pythonxx, C:\Users\username\AppData\Local\Programs\Pythonxxya daC:\Pythonxx ya da hepsi. Başka bir dizine yüklemiş olabilirsiniz - bir zamanlar nerede olduğunu kontrol edin.

Şimdi yüklemeyi kaldırdıktan sonra, indirme sayfasına giderek istenen sürümü yeniden yükleyin ve normal kurulum sürecini izleyin. Python'un nasıl kurulacağına dair ayrıntılara girmeyeceğim. . Son olarak, komut istemini açıp yazarak şu anda hangi sürümün yüklü olduğunu kontrol edebilirsiniz python -V.

3. Seçenek

Bu yaklaşım ikincisine oldukça benzer - temelde eskisini kaldırır ve tercih ettiğiniz sürümle değiştirirsiniz. İstenmeyen Python dağıtımının nasıl kaldırılacağına ilişkin kısmı değiştiren tek şey: Başlangıçta Python'u kurmak için kullandığınız Python3 yükleyicisini çalıştırın (genellikle yukarıda belirtildiği gibi Python dizininizde saklanır; daha fazla yardım için buna bakın ). Orada , kaldırıcı aracılığıyla sağlanan adımları repair or uninstallseçerek devam etme uninstallve takip etme seçeneği elde edersiniz .

Python'u nasıl kaldırırsanız kaldırın (bu konuda birçok kaynak vardır, örneğin bu Stack Overflow sorusu veya Stack Exchange sitesinde Super User'da yayınlanan Vincent Tang adıyla bir kullanıcı problem dizisi vb.), Sadece aranan Python sürümünde belirtilen adımları takip ederek .Option 2

4. seçenek

4. seçenek Anaconda ile ilgilidir. Lütfen Anaconda'nın Windows'a nasıl kurulacağını öğrenmek için bu siteye bakın . Step 9varsayılan Python'unuz olarak kurmak istemediğiniz için önemlidir - Python'un birden çok sürümünü çalıştırmak istiyorsunuz :

Anaconda'yı varsayılan Python'unuz olarak kaydedip kaydetmeyeceğinizi seçin. Birden fazla Anaconda sürümünü veya Python'un birden çok sürümünü kurmayı ve çalıştırmayı planlamıyorsanız, varsayılanı kabul edin ve bu kutuyu işaretli bırakın.

Yukarıda bağlantılandırdığım resmi öğreticiyi takip edin.

Bitmiş kez tek tek Kobrayla istemi aşağıdaki komutları oluşturabilirsiniz: Varsayılan piton sürümü üzerine yazmak için sistem akıllıca kullanımını conda install python=3.6veya sanal ortam yaratmak için devam edin ve kullanım conda create -n $PYTHON36_ENV_NAME python=3.6 anacondaoysa $PYTHON36_ENV_NAMEayarlayabileceğiniz özel adıdır. Kredi vadesi Kredi - kullanıcı @CermakM gelen bu konuya şiddetle bu pasajı etkiledi.

Araştırmamda bir sürü faydalı Stack Overflow ipliği ile karşılaştım - Anaconda ile zorlu yola giderseniz bunları kontrol edebilirsiniz:

Seçenek 5

Takip eden şey klasik anlamda bir indirgeme değil - yine de bütünlük adına bu yaklaşıma da değinmeye karar verdim. Windows'ta birden fazla Python sürümünü de çalıştırabilirsiniz - StackOverflow'daki kötü şöhretli bir iş parçacığı bu soruyla ilgilenir, bu nedenle sizi daha fazla okuma amacıyla kibarca oraya yönlendiriyorum .


Linux

seçenek 1

Windows için üçüncü seçeneğe oldukça benzer, Anaconda gibi sanal bir ortam kullanmanızı şiddetle tavsiye ederim. Anaconda - veya kısa conda - Linux'ta da mevcuttur. Resmi kurulum belgelerine buradan bakın . Bir kez daha bu iş parçacığı , bir Python sürümünün üzerine nasıl yazılacağı ve sırasıyla istediğiniz Python sürümünüzle özel olarak nasıl bir ortam yaratılacağı konusunda şiddetle tavsiye edilmektedir.

seçenek 2

Çokça önerilen bir başka sanal ortam da Pyenv. @Sawan Vaidya kullanıcısı , bu Stack Overflow sorusunda Python sürümünün nasıl yükseltileceğini veya düşürüldüğünü Pyenv. Bir Python sürümünü global olarak ayarlayabilir veya yerel bir ortam oluşturabilirsiniz - her ikisi de bahsedilen başlıkta açıklanmıştır.

3. Seçenek

@Jeereddy adlı başka bir kullanıcı, yazılım paketi yönetim sistemini kullanmayı önerdi Homebrew. Bu seçeneği şu anki soruda iyice açıkladı :

$ brew unlink python
$ brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/e128fa1bce3377de32cbf11bd8e46f7334dfd7a6/Formula/python.rb
$ brew switch python 3.6.5

Seçenek 5

Tekerleği yeniden icat etmeye gerek yok - bu iş parçacığı @Sidharth Taneja'nınki gibi birçok güzel koşu yaklaşımıyla dolu .

  1. İstediğiniz Python sürümünü https://www.python.org/downloads/release adresinden indirin ve bir normal package.
  2. Çalıştırmak cd /Library/Frameworks/Python.framework/Version
  3. lsTüm yüklü Python sürümlerini listelemek için yürütün
  4. Çalıştırın sudo rm -rf 3.7, Python sürüm 3.7'yi kaldırın - silmek istediğiniz sürüm (ler) için tekrar edilebilir
  5. Kontrol edin python3 -v, başlangıçta yüklemek istediğiniz sürümü görüntülemelidir

Seçenek 6

Bu iplik ne bir altın madeni ! As @nondetermistic derinlemesine (doğrudan bağlantı nitelendirdi görevinden ):

Python kaynak kodunu şu şekilde kurun:

#Taken Python 3.6 as an example
$ mkdir /home/<user>/python3.6
$ ./configure --prefix=/home/<user>/python3.6/
$ make altinstall

Artık bunlardan indirilen sürüm (ekleyebildiğimizde /home/<user>/python3.6/binkadar) PATHyanı sıra libhiç LD_LIBRARY_PATHbir sanal ortam ya da sadece oluşturun: /home/<user>/python3.6/bin/python3.6 -m venv env-python3.6. Sisteminizde birden çok Python sürümünü çalıştırmak için çok estetik ve basit bir çözüm .


Mac os işletim sistemi

seçenek 1

Kullanımı pyenvile Homebrewkredi - @Shayan onun cevap burada :

1.) takma pyenvile Homebrew:

brew update
brew install pyenv

2.) En son pyenvsürümü almak için GitHub deposunu klonlamak :

 git clone https://github.com/pyenv/pyenv.git ~/.pyenv

3.) Ortam değişkenlerini aşağıdaki gibi tanımlama

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

4.) Kabuğu yeniden başlatmak, böylece PATHdeğişiklik işe yarıyor

exec "$SHELL"

5.) Mevcut Python sürümlerini kontrol etmek

pyenv install --list

6.) İstenen Python sürümünü yükleme, örneğin 3.6

pyenv install 3.6

7.) Küresel olarak ayarlamak ( ayrıca devam edebilir ve yalnızca belirli bir ortamda kullanabilirsiniz )

pyenv global 3.6

8.) Sistemin kullandığı Python sürümünü kontrol edin - istenen / eski sürümünüz burada görüntülenmelidir.

python3 --version

seçenek 2

Önceki yaklaşımlara benzer şekilde Anaconda'yı macOS'ta da indirebilirsiniz . Kurulum kılavuzu için buraya tıklayın . Zaten tarif ettik kullanımı hemen hemen aynıdır Option 4ait Windowsrehber. Lütfen yukarıya bakın.

Diğer seçenekler

Bu durumda oldukça tekrarlanıyor. Daha fazla okumak için aşağıdaki kaynakları incelemenizi rica ederim:


Çeşitli

Bu yazıyı yazarken, çizgiyi nereye çekeceğimi bilememe sorunu yaşadım. Python'un şu anda desteklediği işletim sistemlerine bakarken, bahsettiklerim de dahil olmak üzere, Linux , Microsoft Windows ve macOS gibi büyük bir liste alırsınız. , ancak açıkça farklı Linux dağıtımları tek başına ele alınır, örneğin CentOS, Arch Linux veya Fedora, aynı zamanda - yoksa Windows 10, 7 vb. için ayrı seçenekler mi yapmalıyım?

Homebrew, Conda veya benzeri modüller söz konusu olduğunda yüksek tekrarlama derecesi nedeniyle, listemi Ubuntu gibi dağıtımlarla "ana üç" işletim sistemiyle sınırlamaya karar verdim (Python sürümümü 3.7.5'ten nasıl düşürürüm? ubuntu'da 3.6.5'e ), CentOS ( CentOS'ta python sürümü nasıl düşürülür? ) Stack Overflow'da kolayca araştırılabilir. Çoğu zaman , söz konusu dağıtımlar için Linux sekmesinden çözümler uygulayabilirsiniz . Aynısı Windows ve macOS (sürümler) için de geçerlidir.


@ moonman239 Çözümümün kriterlerinizi karşılayıp karşılamadığını lütfen bana bildirin. Herhangi bir soru sormakta tereddüt etmeyin veya belirli konularda daha derinlemesine gidecek miyim bana bildirin.
JM Arnold

@JMArnold: Görünüşe göre tüm üsleri ele almışsın. Teşekkürler! Windows tabanlı yanıtların olmamasına bakılırsa, Python kullanıcılarının azınlığı gibi görünen Windows'u kullanıyorum.
moonman239

3

Önceki bir sürümü kaldırmadan veya Anaconda veya docker gibi ek yazılımlara geri dönmeden temiz bir yol, Python 3.6 kaynak kodunu indirmek ve aşağıdaki gibi kurmaktır:

$ mkdir /home/<user>/python3.6
$ ./configure --prefix=/home/<user>/python3.6/
$ make altinstall

Kullanmak için siz:

  • eklemek /home/<user>/python3.6/biniçin için PATH(ve libhiç LD_LIBRARY_PATH) ve onunla yapılabilir. (Ayrıca tam olarak neyi başarmaya çalıştığınıza bağlı olarak dahil etme yolunuza eklemeniz gerekebilir - ama umarım fikri anlarsınız.);

  • ya, buna benzer bir sanal ortam yaratmak: /home/<user>/python3.6/bin/python3.6 -m venv env-python3.6.

Sudo veya root erişimi gerekmez. Sisteminizi bozmak yok.


Önce en son sürümü indirmeyi unutmayın (3.6.9): python.org/downloads/release/python-369
Rabindranath Andujar

2

Tensorflow'u python 3.7 ile kurarken sorun yaşıyordum ve python3.6 ile sanal bir ortam kurulumuna sahip olmak için bu talimatları izledim ve çalıştırdım

Download the Python3.6 tgz file from the official website (eg. Python-3.6.6.tgz)
Unpack it with tar -xvzf Python-3.6.6.tgz
cd Python-3.6.6
run ./configure
run make altinstall to install it (install vs altinstall explanation here 

tensorflow için python3.6 sanal ortamı kurma

Jupyter not defteri veya jupyter laboratuvarı kullanıyorsanız, bu doğru sanal ortamı seçmenizde yardımcı olabilir

python -m venv projectname
source projectname/bin/activate
pip install ipykernel
ipython kernel install --user --name=projectname

Bu noktada jupyter'ı başlatabilir, yeni bir defter oluşturabilir ve ortamınızda yaşayan çekirdeği seçebilirsiniz.

sanal ortam ve jupyter defterler

Bu yardımcı olur umarım


2

pyenvpython sürüm yönetimi için Linux / MacOS'ta kullanılabilir. pyenv-winçatal mıpyenv Windows üzerinde de kullanılabilir.

Kurulum

Mac os işletim sistemi

Mac Catalina'da test edildi

  1. Kurun pyenv.

    brew install pyenv
    
  2. Kabuk yapılandırma dosyanıza aşağıdakileri ekleyin:

    • .bashrc/ .bash_profile- Bash için
    • .zshrc - Zsh için
    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    
  3. Kabuğunuzu yeniden başlatın. Yeni bir kabuk exec "$SHELL"başlatın veya mevcut kabuğunuzda çalıştırın .

Linux Alt Sisteminde Linux / Windows

Arch Linux'ta test edildi

  1. pyenvSisteminize kurun .

    curl https://pyenv.run | bash
    
  2. MacOS kurulumunun 2. ve 3. Adımlarındaki aynı adımları izleyin.

pencereler

  1. pyenv-winWindows'a yükleyin .

    Powershell'de

    pip install pyenv-win --target "$HOME\.pyenv"
    

    Cmd.exe içinde

    pip install pyenv-win --target "%USERPROFILE%\.pyenv"
    
  2. Powershell / Terminal kullanarak ortam değişkenlerini ayarlayın.

    [System.Environment]::SetEnvironmentVariable('PYENV',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
    [System.Environment]::SetEnvironmentVariable('PYENV_HOME',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
    [System.Environment]::SetEnvironmentVariable('path', $HOME + "\.pyenv\pyenv-win\bin;" + $HOME + "\.pyenv\pyenv-win\shims;" + $env:Path,"User")
    
  3. Terminalinizi kapatıp yeniden açın. Çalıştırmakpyenv --versionTerminalde .

    a. Dönüş değeri pyenv'in kurulu sürümü ise, aşağıdan devam edin. b. Bir komut bulunamadı hatası alırsanız, ortam değişkenlerinin GUI aracılığıyla doğru şekilde ayarlandığından emin olun: Bu PC → Özellikler → Gelişmiş sistem ayarları → Gelişmiş → Ortam Değişkenleri ... → PATH c. Bir komut bulunamadı hatası alırsanız ve yerleşik bir terminalle Visual Studio Code veya başka bir IDE kullanıyorsanız, yeniden başlatın ve tekrar deneyin.

  4. Ana dizinden çalıştırın pyenv rehash.

Kullanım

Yüklü python sürümlerini kontrol edin

pyenv versions

Misal

$ pyenv versions
* system (set by /home/souser/.pyenv/version)
  3.6.9

Belirli bir python sürümü kurdu

pyenv install <version-number>

Yüklü bir python sürümünü kaldırın

pyenv uninstall <version-number>

Bir python sürümünü sistem genelinde python sürümü olarak ayarlayın

pyenv global <version-number> # <version-number> is the name assigned to your python in output of `pyenv versions`

Misal

$ python --version
Python 3.9.1
$ pyenv global 3.6.9
$ python --version
Python 3.6.9
Bir dizin ve tüm alt dizinleri için bir python sürümü ayarlayın
pyenv local <version-number> # <version-number> is the name assigned to your python in output of `pyenv versions`

Misal

~/tmp/temp$ python --version
Python 3.9.1
~/tmp/temp$ pyenv local 3.6.9
~/tmp/temp$ python --version
Python 3.6.9

Daha fazla ayrıntı için Github depolarını kontrol edebilirsiniz: pyenv ve pyenv-win .


1

Yeni bir sanal ortam oluşturmanızı ve tüm paketleri baştan kurmanızı öneririm çünkü bazı paketlerin tekerlekleri Python'un önceki sürümü için kurulmuş olabilir. Bunun en güvenli yol olduğuna inanıyorum ve iki seçeneğiniz var.

  1. Aşağıdakilerle yeni bir sanal ortam oluşturmak venv:

    python3.6 -m venv -n new_env
    source venv_env/bin/activate
    
  2. Bir condaortam yaratmak :

    conda create -n new_env python=3.6
    conda activate new_env
    

Bir ortama kurduğunuz paketler, ortamın Python sürümüne göre oluşturulur ve mevcut ortamı dikkatlice değiştirmezseniz, paketler arasında bazı uyumsuzluklara neden olabilirsiniz. Bu nedenle Python 3.6 ile oluşturulmuş yeni bir ortamın kullanılmasını tavsiye ederim.


0

Python 3.6'yı indirip kurun ve ardından sistem yolu ortam değişkenini python 3.6'ya değiştirin ve python 3.7 yol sistemi ortam değişkenini silin. Sonuçlar için bilgisayarı yeniden başlatın.


0

Anaconda kullanıyorsanız, belirtilen sürümle yeni bir ortam oluşturabilirsiniz. Eğer mevcut sürümün 3.7 tutmak istemiyoruz, sadece onu kaldırmak ve yükleyebilirsiniz burada .


-1

Sistemlerine birden çok Python sürümü eklemek isteyenler için: Aşağıdaki komutları çalıştırarak kolayca birden çok yorumlayıcı ekliyorum:

  • sudo apt güncellemesi
  • sudo apt yükleme yazılımı-özellikleri-ortak
  • sudo eklenti-apt-deposu ppa: deadsnakes / ppa
  • sudo apt yükleme python 3.xx
  • ardından sanal ortamınızı oluştururken tercih ettiğiniz tercümanı seçin.

-1

Python 3.9'umu 3.6'ya düşürdüm çünkü librosa paketini kullanmak istedim, ancak şu anda Python 3.9'u desteklemiyor.

Adımlar -

  • Python resmi web sitesine gidin
  • İstediğiniz Python sürümünü indirin
  • Makinenize normal şekilde kurun

python3 --versionTerminalde çalıştırın ve Python'un bu sürümünü gösterecektir.

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.