Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menaik taraf Semua Pakej Python Serentak dengan Pip?
Menaik taraf Semua Pakej Python Serentak dengan Pip
Pip, pengurus pakej popular untuk Python, membolehkan anda mengurus dan memasang pakej untuk Python anda projek. Walaupun pip menyediakan pelbagai arahan untuk memasang dan mengemas kini pakej individu, tidak ada bendera terbina dalam untuk mengemas kini semua pakej sekaligus. Walau bagaimanapun, dengan beberapa arahan bijak, anda boleh mencapai fungsi ini.
Bermula dengan versi pip 22.3, ciri baharu telah diperkenalkan yang melumpuhkan semakan versi pip terbina dalam apabila menggunakan bendera tertentu. Ciri ini membolehkan anda menggunakan arahan berikut untuk mendapatkan senarai pakej lapuk dalam format JSON:
pip --disable-pip-version-check list --outdated --format=json
Untuk mengekstrak nama pakej daripada output JSON dan menaik tarafnya menggunakan pip, anda boleh menggunakan Python berikut arahan:
pip --disable-pip-version-check list --outdated --format=json | python -c "import json, sys; print('\n'.join([x['name'] for x in json.load(sys.stdin)]))" | xargs -n1 pip install -U
Jika anda menggunakan versi pip yang lebih lama (kurang daripada 22.3), anda boleh menggunakan arahan alternatif ini:
pip list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U
Untuk versi pip yang lebih lama, anda boleh menggunakan arahan berikut:
pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U
Nota 1: Perintah grep mengecualikan definisi pakej boleh diedit (bermula dengan -e), seperti yang dicadangkan oleh @jawache.
Nota 2: Bendera -n1 untuk xargs menghalang proses daripada berhenti jika mengemas kini satu pakej gagal, terima kasih kepada @andsens.
Arahan ini boleh diubah suai secara bebas untuk memenuhi keperluan anda, tetapi ia tujuan utama adalah untuk menyediakan cara yang cepat dan mudah untuk menaik taraf semua pakej Python yang dipasang dengan pip.
Atas ialah kandungan terperinci Bagaimana untuk Menaik taraf Semua Pakej Python Serentak dengan Pip?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!