sync notes(auto)

This commit is contained in:
kaz Saita@raspi4 2024-03-11 14:30:11 +09:00
parent 703ad432a5
commit 67958a5d1c
2 changed files with 69 additions and 0 deletions

View file

@ -0,0 +1,46 @@
# 20240121124937 anaconda
#python #anaconda
## anacondaとは
pythonだけではなく、科学計算に使う色々なライブラリがパッケージされたdistribution的なもの。
pipと違い、基本的にはバイナリでライブラリが配布されているため、こちら側にビルド環境などを整備する必要が無い点は優れている。
標準的なインストールのpythonと別で環境を構築する必要があり、混ぜると危険という問題がある。たとえば、windowsのインストーラーではpathを通すオプションがあるが、非推奨になっている。じゃあやらない方がいいのに。web上にはpathを通す記事がたくさんあるが、これを参考にしてしまうと、普通のpythonが動かなくなってしまう気がする。
[PythonとAnaconda: Python環境構築ガイド - python.jp](https://www.python.jp/install/docs/pypi_or_anaconda.html)
> データサイエンスをはじめとする科学技術計算のためのプラットフォームである、[Ananconda](https://www.anaconda.com/) を利用する方法です。AnacondaはPythonの実行環境として知られていますが、本来、データサイエンスのためのいろいろなツールやライブラリの実行環境で、**Pythonにかぎらず、さまざまなコマンドやプログラミング言語も提供しています**。
> Anacondaは、独自にAnaconda用のソフトウェア資産の公開サービスを運営しており、データサイエンス用のソフトウェアなどを中心に、多くのソフトウェアが利用できるようになっています。PyPIで公開されているソフトウェアも、全てではありませんが主要なソフトウェアはAnacondaにも登録されています。
>
> Anacondaからソフトウェアを取得する時は、`conda` というツールを使います。
>
> PyPIとAnacondaは、どちらもソフトウェアの公開サービスではありますが、管理方法が異なっているため、両方を同時に使うのは難しくなっています。PyPIを利用する公式版Pythonの実行環境では、Anacondaを利用できません。Anaconda環境ではPyPIを利用できますが、環境の二重管理になってトラブルの原因になる場合もあり、初心者にはあまりおすすめしたくありません。
>
> では、はじめてPythonを利用するときには、公式版PythonとAnacondaのどちらを利用するべきでしょうか
>
>
> プログラミング経験がまったくない人や、いろんな業務の効率化やWebプログラミングなどの一般的なPythonプログラミングを基礎から学びたい、という場合は、公式版のPythonをおすすめします。プログラミング初心者用のWebサイトや書籍などでは、ほとんどの場合PyPIを使った解説となっていますので、こちらのほうが学びやすいでしょう。
>
> 公式版Pythonのインストール方法は、[Python環境構築ガイド](https://www.python.jp/install/install.html) を御覧ください。
>
> 汎用的なプログラミングを学ぶのではなく、データサイエンスや機械学習などの学習を目的として、ツールとしてPythonを使うなら、Anaconda をおすすめします。Anacondaであれば、Pythonだけではなく、データサイエンスで一般的に使われるツールやライブラリがインストール済みの状態で提供されるので、環境構築で迷わず、すぐに利用を開始できます。
>
> Anacondaのインストール方法は、 <https://www.python.jp/install/anaconda.png>を御覧ください。
>
### Anacondaの注意点[](https://www.python.jp/install/docs/pypi_or_anaconda.html#4whQPY)
> Webプログラミングなどの、科学技術計算以外の一般的なプログラミング分野では、あまりAnacondaは使われていません。このため、一般的なPython入門書やWeb上で見かけるPythonの解説記事などの多くは公式版のPythonを対象としており、PyPIと`pip`コマンドを使っています。
>
> こういった記事を参照するときには、`pip` ではなく `conda` コマンドを利用するように読み替えて実行するようにしましょう。 **[Conda と Pip](https://www.python.jp/install/anaconda/pip_and_conda.html)** にもう少し詳しい解説がありますので、ご参照ください。
>
> まずはプログラミングを経験してみたいけど、データサイエンスにも興味がある、というかたも、とりあえず公式版Pythonではじめてみてはどうでしょうどちらを使い始めても、あとで乗り換えるのは簡単です。とりあえず公式版Pythonでプログラミングの基礎を勉強し、あとでデータサイエンスの勉強を始めたらAnacondaを使う、というのも良い方法だと思います。
>
> 一方、Anacondaでは、仮想環境の作成とパッケージのインストールは両方とも `conda` コマンドで行います。両者を混同してしまうと問題が発生する場合がありますので、気をつけて使い分けるようにしてください。
>
> venvとAnacondaの問題については、[Conda と venv](https://www.python.jp/install/anaconda/conda_and_venv.html) を参照してください。
## refs.
[PythonとAnaconda](https://www.python.jp/install/docs/pypi_or_anaconda.html)
[Conda コマンド: Python環境構築ガイド - python.jp](https://www.python.jp/install/anaconda/conda.html)

View file

@ -0,0 +1,23 @@
# 20240311135526 pip installでerror externally-managed-environment
#python #linux
windowsやmacでは関係ないのかもしれない。
PEP 668で「OSで使う重要なpythonに安易にpip install できてしまい、aptなどのOSでのソフト管理の外からいじれるのはよろしくない」ということになったため、従来の `pip install` でライブラリをインストールする記事などは、適宜読みかえが必要。 エラーメッセージに書いてあるように、 python3-[パッケージ名] という名前でOS管理のパッケージがあることが多い。
```
To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to
install.
If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.
For more information visit http://rptl.io/venv
```
パッケージが無い場合や、特定のバージョンを使いたい場合などは、 [[memo/public/20240121125457 venv|venv]] でローカル環境を作って対応する。
## Ref.
- [PEP 668 Marking Python base environments as “externally managed” | peps.python.org](https://peps.python.org/pep-0668/)
- [俺流PEP668とうまくやっていく方法 | スクエニ ITエンジニア ブログ](https://blog.jp.square-enix.com/iteng-blog/posts/00043-play-with-the-pep668/)