cari
Rumahpembangunan bahagian belakangTutorial PythonGunakan uv untuk mengurus persekitaran Python

使用 uv 管理 Python 環境

Ucapkan selamat tinggal kepada pengurusan persekitaran Python yang menyusahkan! uv ialah alat yang cekap dan mudah yang boleh menyelesaikan pengurusan versi Python, penciptaan persekitaran maya, pengurusan pakej, pengurusan projek dan masalah lain dalam satu perhentian Ia pantas dan mudah untuk bermula. Artikel ini akan mengambil Windows PowerShell sebagai contoh untuk menunjukkan penggunaan uv Untuk platform lain, anda boleh merujuk kepada dokumentasi rasmi untuk pelarasan yang sepadan.

Pasang uv

uv tidak bergantung pada Python, jadi tidak disyorkan untuk menggunakan pip atau pipx untuk memasang. Sistem Windows boleh dipasang terus dengan melaksanakan arahan berikut melalui PowerShell:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Atau pasang menggunakan pengurus pakej seperti scoop:

scoop install uv

Gunakan uv untuk mengurus berbilang versi Python

Gunakan perintah uv python list untuk melihat versi Python yang boleh dipasang dan dipasang:

# uv python list
cpython-3.13.1+freethreaded-windows-x86_64-none    <download available="">
cpython-3.13.1-windows-x86_64-none                 <download available="">
cpython-3.12.8-windows-x86_64-none                 <download available="">
...

Pasang versi terkini:

# uv python install
Installed Python 3.13.1 in 5.89s
+ cpython-3.13.1-windows-x86_64-none

Lihat hasil pemasangan: Versi yang dipasang akan memaparkan laluan pemasangan.

# uv python list
cpython-3.13.1-windows-x86_64-none                 C:\Users\meebo\AppData\Roaming\uv\python\cpython-3.13.1-windows-x86_64-none\python.exe
...

Dapatkan laluan pemasangan Python:

# uv python dir
C:\Users\meebo\AppData\Roaming\uv\python

Pasang versi yang ditentukan:

# uv python install 3.10
Installed Python 3.10.16 in 9.78s
+ cpython-3.10.16-windows-x86_64-none

Nyahpasang versi Python (memerlukan versi tertentu):

# uv python uninstall 3.10
Searching for Python versions matching: Python 3.10
Uninstalled Python 3.10.16 in 1.52s
- cpython-3.10.16-windows-x86_64-none

Lihat semua versi (termasuk semua semakan): uv python list --all-versions

Pasang berbilang versi: uv python install 3.10 3.11

Nyahpasang berbilang versi: uv python uninstall 3.10 3.11

Gunakan uv dan bukannya alat python/pip

Persekitaran Python yang diuruskan oleh uv tidak boleh dilaksanakan secara langsung dengan perintah python, tetapi mesti dilaksanakan melalui perintah uv run. Contohnya:

# cat .\show_version.py
import sys
print(sys.version)

Pelaksanaan:

# uv run .\show_version.py
3.13.1 (main, Dec 19 2024, 14:38:48) [MSC v.1942 64 bit (AMD64)]

Tentukan versi Python untuk dilaksanakan: uv run --python 3.10 .show_version.py

Laksanakan daripada input standard: echo 'print("hello world!")' | uv run -

Lihat versi Python yang dipasang: uv python list --only-installed

Tetapkan versi Python lalai (direktori semasa sahaja): uv python pin 3.10 (buat .python-version fail)

Nyatakan pakej yang diperlukan untuk pelaksanaan

Jika program memerlukan pakej tambahan, seperti cowsay:

# cat .\cow.py
from cowsay import cow
cow('hello, world')

Nyatakan pakej menggunakan pilihan --with:

# uv run --with cowsay .\cow.py
Installed 1 package in 13ms
...

Kosongkan persekitaran maya cache: uv cache clean

Urus persekitaran maya

Buat persekitaran maya: uv venv --python 3.10 (buat direktori .venv) atau nyatakan nama direktori: uv venv myenv

Gunakan persekitaran maya yang ditentukan: uv run --python myenv .show_version.py

Padamkan persekitaran maya: Padamkan direktori persekitaran maya

Pek Pengurusan

Gunakan perintah uv pip untuk mengurus pakej, yang serasi dengan perintah pip.

Pakej pemasangan: uv pip install cowsay

Lihat kebergantungan pakej: uv pip tree

Nyahpasang pakej: uv pip uninstall rich (Pakej bergantung tidak lagi diperlukan tidak akan dipadamkan secara automatik)

Gunakan uv untuk mengurus projek Python

uv menyediakan dua kaedah pengurusan projek: projek fail tunggal dan projek folder.

Projek fail tunggal

Mulakan projek fail tunggal: uv init --script cow3.py --python 3.13 (tambah metadata dalam cow3.py fail)

Tambah pakej: uv add --script cow3.py cowsay rich (ubah suai cow3.py metadata fail)

Alih keluar pakej: uv remove --script cow3.py rich (ubah suai cow3.py metadata fail)

Item Folder

Mulakan projek folder: uv init myproject (Buat direktori projek, termasuk .gitignore, .python-version, hello.py, pyproject.toml, README.md)

Projek pelaksanaan: uv run hello.py (Buat .venv persekitaran maya)

Tambah pakej: uv add cowsay rich (ubah suai pyproject.toml fail)

Kemas kini pakej: uv lock --upgrade-package cowsay atau uv lock --upgrade

Alih keluar pakej: uv remove cowsay

Segerakkan persekitaran projek dengan uv.lock fail: uv sync

Lihat kebergantungan pakej projek: uv tree

Gunakan arahan alat yang disediakan oleh pakej

Laksanakan arahan pakej secara langsung: uvx cowsay -t 'hello, uv' atau uv tool run cowsay -t 'hello, uv'

Nyatakan arahan pelaksanaan pakej: uvx --from httpie http -p=b GET https://flagtech.github.io/flag.txt

Pasang arahan pakej ke sistem: uv tool install httpie

Kemas kini arahan pakej: uv tool upgrade httpie

Nyahpasang arahan pakej: uv tool uninstall httpie

uv menyediakan penyelesaian pengurusan persekitaran Python yang cekap dan mudah, meningkatkan kecekapan pembangunan dengan ketara. Melalui pengenalan artikel ini, saya percaya anda telah menguasai penggunaan asas uv dan boleh mengurus projek dan persekitaran Python anda dengan lebih baik.

Atas ialah kandungan terperinci Gunakan uv untuk mengurus persekitaran Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah pilihan antara senarai dan tatasusunan memberi kesan kepada prestasi keseluruhan aplikasi Python yang berurusan dengan dataset yang besar?Bagaimanakah pilihan antara senarai dan tatasusunan memberi kesan kepada prestasi keseluruhan aplikasi Python yang berurusan dengan dataset yang besar?May 03, 2025 am 12:11 AM

Forhandlinglargedatasetsinpython, usenumpyarraysforbetterperformance.1) numpyarraysarememory-efisien danfasterfornumumerical.2) mengelakkan yang tidak dapat dipertahankan.3)

Jelaskan bagaimana memori diperuntukkan untuk senarai berbanding tatasusunan dalam Python.Jelaskan bagaimana memori diperuntukkan untuk senarai berbanding tatasusunan dalam Python.May 03, 2025 am 12:10 AM

Inpython, listsusedynamicMemoryAllocationwithover-peruntukan, pemecahan yang tidak dapat dilaksanakan.1) listsallocatemoremoremorythanneedinitial, resizingwhennessary.2) numpyarraysallocateExactMemoreForelements, menawarkanpredictableSabeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeBeat.

Bagaimana anda menentukan jenis data elemen dalam array python?Bagaimana anda menentukan jenis data elemen dalam array python?May 03, 2025 am 12:06 AM

Inpython, YouCansspectHedatypeyFeleMeremodelerernspant.1) Usenpynernrump.1) usenpynerp.dloatp.ploatm64, formor preciscontrolatatypes.

Apa itu Numpy, dan mengapa penting untuk pengkomputeran berangka dalam Python?Apa itu Numpy, dan mengapa penting untuk pengkomputeran berangka dalam Python?May 03, 2025 am 12:03 AM

Numpyisessentialfornumericalcomputinginpythonduetoitsspeed, ingatanefisiensi, dancomprehensivemathematicalfunctions.1) it'sfastbeCauseitperformsoperatiation

Bincangkan konsep 'peruntukan memori bersebelahan' dan kepentingannya untuk tatasusunan.Bincangkan konsep 'peruntukan memori bersebelahan' dan kepentingannya untuk tatasusunan.May 03, 2025 am 12:01 AM

Contiguousmemoryallocationiscialforarraysbecauseitallowsficientandfastelementaccess.1) itenablesconstantTimeAccess, O (1), duetodirectaddresscalculation.2) itimproveScheFiCiencyBymultmulteLemiSphetfespercacheline.3)

Bagaimana anda memotong senarai python?Bagaimana anda memotong senarai python?May 02, 2025 am 12:14 AM

Slicingapythonlistisdoneusingthesyntaxlist [Mula: berhenti: langkah] .here'showitworks: 1) startistheindexofthefirstelementtoinclude.2) stopistheindexofthefirstelementToexclude.3)

Apakah beberapa operasi biasa yang boleh dilakukan pada array numpy?Apakah beberapa operasi biasa yang boleh dilakukan pada array numpy?May 02, 2025 am 12:09 AM

NumpyallowsforvariousoperationsonArrays: 1) BasicarithmeticLikeaddition, penolakan, pendaraban, danDivision; 2) Pengerjaan AdvancedSuchasmatrixmultiplication; 3) Element-WiseOperationswithoutExplicitLoops;

Bagaimana tatasusunan digunakan dalam analisis data dengan python?Bagaimana tatasusunan digunakan dalam analisis data dengan python?May 02, 2025 am 12:09 AM

Arraysinpython, terutamanya yang ada, adalah, penawaran yang ditawarkan.1) numpyarraysenableFandlingoflargedataSetsandClexPleperationsLikemovingAverages.2)

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).