Saya memiliki Macbook baru - pengguna menginstalnya, dan kemudian saya menginstal pengguna baru (milik saya), memberikan hak admin dan menghapus yang lama. Saya menggunakan OS Catalina.
Sejak instalasi saya sudah mengalami beberapa masalah izin. VSCode tidak dapat menemukan Jupyter Notebook, pip
menginstal paket di ~/Library/Python/3.7/site-packages
.
Ketika saya melakukannya which python3
saya dapatkan usr/bin/python3
. Ketika saya melakukannya, pip3 install <package>
saya mendapatkan: Defaulting to user installation because normal site-packages is not writeable
Dan kemudian dikatakan telah diinstal, meskipun saya tidak dapat mengaksesnya ketika saya melakukannya import <package>
.
Tampak jelas bahwa ini adalah masalah izin, pip
tidak dapat menginstal ke python "base", dan mereka python
tidak dapat menemukan apa yang telah saya instal ~/Library/Python/3.7/site-packages
.
Saya sudah mencoba menginstal ulang OS, tetapi karena saya belum melakukan instalasi bersih, itu tidak mengubah apa pun. Apa yang saya lewatkan? Bagaimana tepatnya saya bisa memperbaiki izin? Di mana saya ingin menginstal paket ( venv
pasti, tetapi beberapa paket saya ingin global (seperti jupyter
).
Terima kasih
pip
? Bagaimana jika Anda menggunakan yang jauh lebih amanpython -m pip install ....
?python3 -m pip install ...
dalam kasus ini, tapi ya, ketika ada beberapa versi Python yang terlibat, jauh lebih aman untuk dipanggilpip
melalui pendekatan "exec module", jadi Anda tahu Anda menggunakan dieksekusi Python yang diharapkan.Jawaban:
Yang terbaik adalah tidak menggunakan sistem yang disediakan Python secara langsung. Biarkan itu sendiri karena OS dapat mengubahnya dengan cara yang tidak diinginkan, seperti yang Anda alami.
Praktik terbaik adalah mengkonfigurasi versi Python Anda sendiri dan mengelolanya berdasarkan per-proyek menggunakan
virtualenv
(untuk Python 2) atauvenv
(untuk Python 3). Ini menghilangkan semua ketergantungan pada versi sistem yang disediakan Python, dan juga mengisolasi setiap proyek dari proyek lain pada mesin.Setiap proyek dapat memiliki versi titik Python yang berbeda jika diperlukan, dan mendapatkan
site_packages
direktori sendiri sehingga pustaka yang diinstal dengan pip juga dapat memiliki versi yang berbeda berdasarkan proyek. Pendekatan ini adalah penghindar masalah utama.sumber
Apakah masalah yang sama ini pada instalasi baru Debian 9.12. Mem-boot ulang server saya memecahkan masalah.
sumber