From 67958a5d1c266fb2d750b08edd6fa9a691394c6b Mon Sep 17 00:00:00 2001 From: "kaz Saita@raspi4" Date: Mon, 11 Mar 2024 14:30:11 +0900 Subject: [PATCH] sync notes(auto) --- content/20240121124937 anaconda.md | 46 +++++++++++++++++++ ...lでerror externally-managed-environment.md | 23 ++++++++++ 2 files changed, 69 insertions(+) create mode 100644 content/20240121124937 anaconda.md create mode 100644 content/20240311135526 pip installでerror externally-managed-environment.md diff --git a/content/20240121124937 anaconda.md b/content/20240121124937 anaconda.md new file mode 100644 index 0000000..81960fe --- /dev/null +++ b/content/20240121124937 anaconda.md @@ -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のインストール方法は、 を御覧ください。 +> +### 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) diff --git a/content/20240311135526 pip installでerror externally-managed-environment.md b/content/20240311135526 pip installでerror externally-managed-environment.md new file mode 100644 index 0000000..0505d63 --- /dev/null +++ b/content/20240311135526 pip installでerror externally-managed-environment.md @@ -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/)