Apa yang 95% orang inginkan
Dalam kebanyakan kasus, apa yang ingin Anda lakukan ketika Anda mengatakan bahwa Anda ingin memperbarui Anaconda adalah dengan menjalankan perintah:
conda update --all
(Tetapi ini harus didahului oleh conda update -n root conda
sehingga Anda memiliki conda
versi terbaru diinstal)
Ini akan memperbarui semua paket di lingkungan saat ini ke versi terbaru - dengan cetakan kecil adalah bahwa ia mungkin menggunakan versi yang lebih lama dari beberapa paket untuk memenuhi batasan ketergantungan (seringkali ini tidak diperlukan dan ketika diperlukan, pemecah paket paket akan melakukan yang terbaik untuk meminimalkan dampak).
Ini perlu dieksekusi dari baris perintah, dan cara terbaik untuk sampai ke sana adalah dari Anaconda Navigator, lalu tab "Environments", lalu klik pada segitiga di samping root
lingkungan, pilih "Open Terminal":
Operasi ini hanya akan memperbarui satu lingkungan yang dipilih (dalam hal ini, root
lingkungan). Jika Anda memiliki lingkungan lain yang ingin Anda perbarui, Anda dapat mengulangi proses di atas, tetapi pertama-tama klik pada lingkungan tersebut. Ketika dipilih ada penanda segitiga di sebelah kanan (lihat gambar di atas, langkah 3). Atau dari baris perintah Anda dapat memberikan nama lingkungan ( -n envname
) atau jalur ( -p /path/to/env
), misalnya untuk memperbarui dspyr
lingkungan Anda dari tangkapan layar di atas:
conda update -n dspyr --all
Perbarui paket individual
Jika Anda hanya tertarik untuk memperbarui satu paket saja, cukup klik panah biru atau nomor versi biru di Navigator, mis. Untuk astroid
atau astropy
dalam tangkapan layar di atas, dan ini akan menandai paket-paket itu untuk peningkatan. Setelah selesai, Anda perlu mengklik tombol "Terapkan":
Atau dari baris perintah:
conda update astroid astropy
Memperbarui hanya paket di Distribusi Anaconda standar
Jika Anda tidak peduli dengan versi paket dan hanya ingin "set terbaru dari semua paket dalam Distribusi Anaconda standar, selama mereka bekerja bersama" , maka Anda harus melihat intinya .
Mengapa memperbarui paket Anaconda hampir selalu merupakan ide yang buruk
Dalam kebanyakan kasus memperbarui paket Anaconda dalam daftar paket akan memiliki hasil yang mengejutkan: Anda sebenarnya dapat menurunkan banyak paket (pada kenyataannya, ini mungkin jika itu menunjukkan versi sebagai custom
). Inti di atas memberikan detail.
Leverage lingkungan conda
root
Lingkungan Anda mungkin bukan tempat yang baik untuk mencoba dan mengelola serangkaian paket yang tepat: itu akan menjadi ruang kerja yang dinamis dengan paket baru diinstal dan paket diperbarui secara acak. Jika Anda membutuhkan kumpulan paket yang tepat maka buatlah lingkungan conda untuk menampungnya. Berkat cache paket conda dan cara menautkan file digunakan melakukan hal ini biasanya i) cepat dan ii) mengkonsumsi sedikit ruang disk tambahan. Misalnya
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
The dokumentasi conda memiliki rincian lebih lanjut dan contoh.
pip, PyPI, dan setuptools?
Semua ini tidak akan membantu memperbarui paket yang telah diinstal dari PyPI melalui pip
atau paket apa pun yang diinstal menggunakan python setup.py install
. conda list
akan memberi Anda beberapa petunjuk tentang paket Python berbasis pip yang Anda miliki di lingkungan, tetapi tidak akan melakukan sesuatu yang istimewa untuk memperbaruinya.
Penggunaan komersial Anaconda atau Anaconda Enterprise
Ceritanya hampir sama persis, dengan pengecualian bahwa Anda mungkin tidak dapat memperbarui root
lingkungan jika diinstal oleh orang lain (katakanlah /opt/anaconda/latest
). Jika Anda tidak dapat memperbarui lingkungan yang Anda gunakan, Anda harus dapat mengkloning dan kemudian memperbarui:
conda create -n myenv --clone root
conda update -n myenv --all
conda update [-n root] -v anaconda
, tetapi menawarkan untuk MENGUNDUHKUpython: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0
. Tampaknya sangat rusak.