【Python】2-1Pythonを使用する為の環境設定イメージ(業務自動化)

Pytyon

参考書籍

本記事は以下の書籍などを参考に実際に実装したものを記事にしております。

概念図

※WindowsOSに限ったものです。MacOSでは一部あてはまりません。

1.統合開発環境
 ここではVSCodeを使用します。

2.Python環境
 Pythonをインストールする際に同時にインストールされるもの。
 ・pipツール
 ・py ランチャー

3.各種サードパーティのライブラリ
 Python公式外の団体や個人が開発したライブラリ

4.Web操作用のDriver
 ブラウザを自動操作するためのファイル

Pythonライブラリの種類

1.組み込み型
 Pythonのプログラムにおいて、使用宣言をしなくとも使用できるライブラリです。

2.標準ライブラリ
 レポジトリからインストールしなくとも、使用宣言をすれば使用できるライブラリです。

3.サードパーティライブラリ
 PyPiというライブラリのレポジトリから、インターネットを経由してインストールすることで使用できます。

サードパーティライブラリのインストール方法

1.pip ツール

pipというのは、パッケージを管理するツールです。

2.依存性

Pythonのライブラリには、そのほかのライブラリをプログラムのパーツとして使用していることがあります。このような関係を「依存性がある」という。

依存関係にはライブライのバージョン毎にもあります。

pipにはこの依存関係を考慮して他のライブラリを合わせて自動的にインストールしてくれます。

【注意】Pyrhonのバージョンとライブラリバージョンの関係性

ライブラリは、Pythonのバージョンによって使用できたり、できなかったりします。
これは、ライブライの開発元が個人だった場合によくあります。

Pythonのバージョンが上がった場合にライブラリ側でも同様に対応したバージョンアップが必要なためです。

例えば、Python2.xxでは使えていたライブラリも、Python3.xx系にバージョンアップしたとたんライブラリが使用できなくなった問うことがよくあります。
※または、依存関係のライブラリ側が更新されていなかったなど。

この場合の対策として、複数バージョンのPythonをインストールして、ライブラリが動く範囲の処理をそれぞれのバージョンに任せるという、処理が複雑化することとなります。

例えば、メールの取り込みをPython2系統で実施し、エクセルファイルの出力がPython3系統
でという複雑な処理になってしまいます。

複数のPythonをインストール場合

Pythonは1年ごとにマイナーバージョンアップを繰り返します。

基本的にはPythonのバージョンがあった場合は、ライブラリも最新版に対応しています。
ライブラリが最新のPythonに対応しているのであれば、問題なくPythonもバージョンアップして問題ありません。

※ライブラリの更新が止まっている場合。
ライブラリが古いバージョンのPythonにしか対応していない場合でも、最新のPythonをインストールしなくてはいけないという状態もあるかと思います。(業務上最新のバージョンしか認めていないなど)このようなケースにおいて問題になることがあります

単一のバージョンでも問題ないケース

1.Pythonの学習を目的としている場合
  pythonの短期学習を目的としている場合には有用です。

2.特定のライブラリを固定で使用する場合
  古いバージョンのままでも問題がない、新しいライブラリを使用しなくともよい場合に有用です。

複数のPythonをインストールする場合

Pythonは複数のバージョンをインストールすることができますが、実際に使用する場合は1つのバージョンでしか実行することができません。

そこで、「Pythonの仮想環境」を利用することで、複数のバージョンを使用することができます。

Pythonをインストールする際に注意点があります、以下の記事を参照してください。

Pythonの仮想環境のイメージとして、以下ようになるかと思います。

1つひとつの処理に対して、特定のPythonのバージョンを実行するように指示させてライブラリの依存を解決しつつ、まるで一つのPythonのバージョンで実行させているかのように見せることができます。※いまでは、Python公式の推奨環境になっています。

「仮想環境」言葉に注意。

仮想環境という言葉を検索すると様々なものがヒットするかと思いますが、Pythonにおける仮想環境とはあくまで、1つのPythonのバージョンだけを使用しない方法の手法のことをさします。

CM

コメント

タイトルとURLをコピーしました