KEMBAR78
開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython | PPTX
開発環境構築からはじめるPython
VisualStudio Codeとpipenvで始めるpython
2021/8/5 初版
2021/8/19 修正
2021/9/7 修正
2021/9/23 修正
この資料について
• 某所の勉強会で作成した資料
概要
• Pythonの環境と開発環境構築に重点をおいたPythonのハンズオン
セミナーです。 Pythonを使った開発をはじめるために
VisualStudioCodeとpipenvを知りPythonをはじめることができる。
と思っている。
• 今日行う事
• はじめに
• Pythonインストール
• VisualStudioCodeインストール/設定
• Pythonと仮想環境
• VisualStudioCodeを使ってPythonを使う
• IDEを使ったPython、JupyterNotebook
ここが9割位
はじめに
Python
• 言語としての特徴
• インタプリタ言語
• コンパイルしなくてもよい言語。すぐに結果が返ってくる。
• 利用シーン[1]
• 機械学習、数値計算
• 特に機械学習の分野ではPythonが圧倒的
• Webアプリケーション
• 教育
[1]https://ja.wikipedia.org/wiki/Python#%E5%88%A9%E7%94%A8 (2021/8/5 accessd)
Python
• Python 公式チュートリアル ここでおおよそ学べる
• https://docs.python.org/ja/3/tutorial/
• 大事な事↓
やる気を高めよう
モチベーションは重要
環境構築になぜ重点を置くか
• Pythonの参考書で開発環境について詳しく書かれていない
• ①(言語の進化、開発環境)変化が早い、大きい
• ②ユーザーの好き好み。があるからと推測
• クラウド(google Colab)上で開発環境が整備されている(次P)
初学者向け
開発環境について数ページ、基本はテキストエディタで開発
中級~専門
環境は前提
この間
環境構築になぜ重点を置くか
• Google Colaboratory
• Googleが提供するPython開発環境。JupyterNotebookでの開発
• ローカルで構築する開発環境との比較
• 良い点
• 自前の開発環境を構築せずにサクッと利用・開発が出来る。
• 高速処理(GPU、TPU)が一定額無料で使用できる。
• 悪い点
• 時間制限がある。放置するとセッションが切れてコードが消える。
• データアップロードがオンライン経由
• 上げにくいデータ(個人情報データ)は扱えない。
(ローカルで匿名化してから・・・など)
環境構築になぜ重点を置くか
• (あとあときっと)役に立つ可能性があるから
• 今回紹介するVisualStudioCode(以下:VSCode)というモダンな開発環境
をPythonを通じて知る・使うことができる
• PythonがOS(Windows)でどうインストールされ管理されているか
• (まぁまぁ)楽できるから
• モダンな開発環境による生産性を高める機能を使って開発
• コード補完による生産性工場、デバッグ機能(≠printデバッグ)
• 山を登るために山の装備はあったほうが良いはず。
Pythonを学ぶ上でも、Pythonの環境を整えておいた方が良い。
環境構築になぜ重点を置くか
• 京都大学 Python演習 2020
• https://repository.kulib.kyoto-u.ac.jp/dspace/handle/2433/245698
Pythonをインストールすると標準使用できる
統合開発環境「IDLE」をベース
数理工向けPythonパッケージ Anaconda
https://www.anaconda.com/blog/sustaining-our-stewardship-of-the-open-source-data-science-community (accessed 2021/6/21)
• 2020/4/30 有償版利用を進め
る内容が発表された。
• 非商用利用者(学生、研究者、
趣味)は使ってもよい。
• 簡単な研究プロジェクト向けの
場合は非商用の記載あり
• PoCのことを言っている?
• 過去の経験
• pipとanacondaを組み合わせて
環境がおかしくなった経験(再
インストールで解決)
Pythonインストール
①Python.org から pythonの環境をダウンロードする
https://www.python.org/
※寄り道
• 「Python version」はpythonの言語バージョン
• バグフィックスは頻繁、機能追加が多い
• 常に最新版を使うとよいわけではない、
ライブラリがそのverに対応していない場合がある。
• 今回のハンズオンでは「3.8」を使用
「3.9」でもOK。混在してもOK。
https://www.python.org/ (accessed 2021/8/5)
• 3.8.xの最新版を選べばよい。OSによって最新版が無い場
合がある。その時は1つ前のVerを使用。
• 今回は↓を使用(末尾は新しくてもよい)
「python-3.8.10-amd64.exe」
続①Python.org から pythonの環境をダウンロードする
https://www.python.org/
②Pythonをインストールする
1.ここのチェックを確認
☑ Install ~ 全ユーザーが使えるか
☑Add Python~PATHを通すか
コマンドプロンプトでpythonを使う場合はPATHを通した方
が良い(参考書向け)。
PATHについては次ページで解説。
複数バージョンのPythonをインストールした場合、直近の
バージョンにパスが通ることになる(場合によっては注意)。
2.インストールを実行
確認が求められる「はい」を選択
3.インストール完了
※参考情報 「PATH」を通すの意味
Add~のチェック無し(表示されない) Add~のチェック有り(表示される)
コマンドプロンプトでpythonのバージョンを調べるコマンド(python --version)での違い
C:¥Users¥[アカウント名]¥AppData¥Local¥Programs¥Python¥Python38
←python.exeを実行
ここへのパスが暗に設定されるかどうか
※補足
Add~チェックを外した場合は、
>py –version(コマンド)
>py -3.8 ○○ ※バージョン指定
「py」でpythonのパスを通して実行可能
「py」はpythonランチャー。インストールし
た最新のpythonへのパスを通す
Pythonは下記フォルダ内にある実行ファイルを実行している
「Add~のチェック」を入れる=環境変数の「Path」にPythonの実行ファイルがあるパスを設定する
続②Pythonをインストールする
Pythonの動作を確認する
1.コマンドプロンプトを開く※Windows PowerShellでもよい
2.下記コマンドを入力し、Enter
>python --version
3.Pythonのバージョンが出力されればOK
※既にPythonをインストールしている人によっては、その環境のver
出なかった場合は、python再インストール
「プログラムの追加と削除から」 削除⇒
Pythonをさわってみる
• 「python」で対話モードの開始
• REPL (Read-Eval-Print Loop)とも
• ユーザーが入力したコードを
pythonが解釈し、実行する。
• インタープリタ言語の特徴
• 「exit()」で対話モードの終了
1.下記コマンドを入力し、Enter
>python
2. 1+1 と入力し、Enter
>1+1
3. print(“Hello World”)と入力し、Enter
>print(“Hello World”)
4. exit() と入力し、Enter
>exit()
Pythonをさわってみる
対話モードで行うのは面倒なのでテキストエディタでコードを書いて実行する方法
1.テキストエディタで下記コードのファイルを作成。
デスクトップに適当な名前(半角英数)のフォルダを作成し「test.py」で保存
print(“Hello World from Text”)
2.コマンドプロンプトで「test.py」にあるフォルダに移動
※フォルダを開いて、パスに「cmd」通して入力するとその場所でコマンドプロンプトが開く
3.下記コマンドでテキストエディタのpythonコードを実行
>python test.py
※PATHを通していない場合
>py test.py
Pythonをさわってみる
• 対話モードで開発することはほぼない(と思われる)
• 初学者向けの参考書はテキストエディタでの開発
• ここがPATHを通しておいた方が良い理由
• デバッグ、コード補間が無い⇒効率的ではない
• IDE(Integrated Development Environment/統合開発環境)を用いた開発
>python [pythonコードのファイル名]
VisualStudioCodeインストール
VisualStudioCode (VSCode)
• PythonのIDEは多数ある。今回は「VisualStudioCode」を使う
• 軽量なソースコードエディタ
• マルチプラットフォームで動作(Windows、MAC、Linux)
• 拡張機能で様々な開発言語に対応する
• 詳しくは⇒https://code.visualstudio.com/docs/
• 最も人気のある開発者環境ツール[1]
• 拡張機能で下記が可能
• VSCodeを使ったPython開発
• インタラクティブなJupyterNotebookを使った開発
[1]https://ja.wikipedia.org/wiki/Visual_Studio_Code (2021/8/5 accessd)
①VSCodeのインストーラをダウンロードする
https://code.visualstudio.com/
https://code.visualstudio.com/ (accessed 2021/8/5)
• ページは遷移するが、同時にインストー
ラもダウンロードされる
• 資料作成時は下記のバージョン
「VSCodeUserSetup-x64-1.59.0」
(タイミングによってはより新しいものも)
②VSCodeをインストールする
デフォルトでOK
説明では「Codeで開く」を追加
VSCodeを設定する
• VSCodeは拡張性が高いエディタ
• エディタ自体の拡張性も高い
• 「拡張機能」で様々な開発言語に対応、補助機能を拡張
• 拡張機能で下記をインストール
• 言語パック 日本語化のため
• Python VSCodeでPythonを使うための拡張機能
• Python extension pack Pythonを使いやすくする拡張機能
• Python Indent インデントを分かりやすくする
③VSCodeでPythonで開発できるようにする
初回起動時は英語
日本語パックのインストールを行う
ポップアップでインストールを選択
消えた場合は「ベルマーク」
ポップアップが出ない場合は、Extension->Japanese Language Pack for Vsisual~をInsutallして、再起動
拡張機能を入れる
このアイコンをクリック
必要な拡張機能を入力
例に「python」
インストールをクリック
拡張機能によっては、VSCodeの再読み込み(再起動)が必
要な場合がある。下記になればインストール完了。
③VSCodeでPythonで開発できるようにする
「Python」を入れる
同じように下記をインストール
Python Extension Pack
Python Indent
③VSCodeでPythonで開発できるようにする
④VSCode + PythonでHello World
1.準備
デスクトップに「testpython」というフォルダを作る
※VSCodeではユーザーが任意に作成or指定した「フォルダ」にコードを保存する。
※コードを新規作成して「フォルダ」に保存でもよい。
2.「testpython」フォルダをVSCodeから開く
※フォルダを右クリックして「Codeで開く」からでもよい
フォルダ内に実行ファイ
ル等が生成される場合が
ある。その場所から実行
してよいかの確認
④VSCode + PythonでHello World
3.新規ファイルを作成
4.コードを入力し、保存
↓を入力
print("Hello World from VSCode")
VSCodeの「エクスプローラー」で開いているフォルダが表示
「エクスプローラ」上で「+」マークをクリック
※[ファイル]メニューの新規ファイルで空のファイルを作成し、
保存すれば上と同じとなる
作成したファイルをダブルクリックすると、
該当ファイルが開くことができる(編集できる)
カーソルを移動すると表示される
④VSCode + PythonでHello World
5.VSCode上でtest.pyを実行
[実行]から[デバッグなしで実行]をクリック(Ctrl+F5でも実行可能)
6.ターミナル上で実行結果を確認
※参考 VSCodeの設定
VSCode自体の設定(フォントサイズ、フォントを変える等)
[ファイル]->[ユーザー設定]->[設定]から行う
※「settings.json」という設定ファイルを直接編集してもよい
・VSCodeの設定(お好みで)
インデンド ガイド
フォーマット
制御文字を表示
フルパス表示
Window Title → ${activeEditorLong}
Color Theme
テーマを変えられる
直近の開いていたファイルなど
restoreWindows
マウスホイールでズームを有効
editor.mouseWheelZoom
表示言語
Configure
・タブをスペースにしない
Detect intation false ※これが有効だときかない
insertSpaces false
・VSCodeの設定ファイル
settings.json
https://qiita.com/y-w/items/614843b259c04bb91495
Pythonと仮想環境
Pythonとライブラリ
• Pythonを使った開発
• 様々なライブラリ(パッケージ)と組み合わせて開発を行う
• 開発スピードが早いため、ある時に公開されたコードが動かないことがある。
• 使用するPython ver、ライブラリ verが異なることで起こる。依存関係と呼ぶ。
Python 3.7
ライブラリA 1.2
ライブラリB 2.0
Python 3.8
ライブラリA 1.4
ライブラリB 2.0
開発環境:動く こちらの環境:動かない
理由はいろいろ
・新Pythonの言語仕様に
合わせAPIのIFが変更。
・古いIFなので消した。
・IFを理由なく変更。
Pythonとライブラリ
• Pythonの実行ファイルはどこ?ライブラリはどこ?
• Pythonの実行ファイル(python.exe)
C:Users[ID]AppDataLocalProgramsPython
• Python38 ->Python3.8.x系
• Python39 ->Python3.9.x系
• ライブラリ
C:Users[ID]AppDataLocalProgramsPython[Python Ver]Libsite-packages
• Pythonのバージョン毎にライブラリは異なって管理
※参考 下記でインストールされているPythonを表示
>py --list-paths
「※」がついているものがpyで呼び出されているpython
Pythonとライブラリ
• Python/ライブラリのバージョン違いを回避する
• 使用するPython、ライブラリを使うたびにインストール…はしない。
• 「仮想環境」を使用する
• Pythonの仮想環境
• CPUをエミュレーションする仮想ではない。
Pythonの実行ファイルとライブラリを物理的に分離(コピーする)
• 公式チュートリアルではvenvが紹介。今回はpipenv(vnenvを含む)
• https://docs.python.org/ja/3.8/tutorial/venv.html
仮想環境
ワークフォルダA
Test.py
Appdata以下の
pythonで実行
ユーザー環境のpython環境
Python 3.8
(Appdata)
ワークフォルダB
Test.py
ワークフォルダC
Test.py
Python 3.8
./.venv以下
pipenvで仮想環境をワークフォルダ内に作成
仮想環境(.venvフォルダ内)内のPythonで実行
Python 3.8
仮想環境
使用する場合は、環境の切り替え等を行う必要がある。
仮想環境の
pythonで実行
※参考 Pythonとライブラリ
• 異なるPython verの使い分け
• コマンドプロンプトではpyコマンドで使い分け
• >py 最新
• >py -3.8 ver指定
• VSCodeの場合はUIで仮想環境、Python verの切り替えができる
※参考 仮想環境
• Pythonの仮想環境の記事
• 2019年の記事
• https://qiita.com/KRiver1/items/c1788e616b77a9bad4dd
• Pipenv をやめて venv を使いだした話
• https://blog.uedder.com/2020_python_develop_envirionment.html
• 移り変わりが激しい
• 今回はVSCode+pipenvの話
• 今後別環境にうつるかも・・・
①pipenvのインストールと設定(これは1度だけ)
1.下記コマンドを入力
コマンドプロンプト上で下記を入力
>pip install pipenv
※pipはパッケージのインストールコマンド
※python実行環境にpipenvがインストール
されたことになる。
2.Pipenvの設定
仮想環境を「.venv」にに作成する設定を有効化
>setx PIPENV_VENV_IN_PROJECT true
※ログインしているユーザー環境変数に設定
「setx」コマンドで永続化
「set」コマンドの場合、一時的に有効
②pipenvで仮想環境構築
想定:
デスクトップに「pythonmydev」フォルダを作り、この中に仮想環境構築する。
このフォルダ内にVSCodeでpythonコードの開発を行う。
1.コマンドプロンプトで「pythonmydev」 フォルダに移動する
2.pipenvで仮想環境構築
Pipenvで仮想環境構築
>pipenv install
※バージョン指定も可能
>pipenv --python 3 ※3.x最新
>pipenv --python 3.8
コマンドプロンプトで
>cd フォルダをドラックアンドドロップ
すると楽
②仮想環境に入り、ライブラリをインストール
3.Pipenv shellコマンドで仮想環境内に入る
>pipenv shell
※実行されるpythonのコマンドは
「.venv」内の仮想環境で実行されることになる
4.Numpyをインストール
>pipenv install numpy
※pipenvで行う場合は「pipenv」で行う方が良い
pipfileにパッケージ情報が書き込まれるため。下記でもよい。
>pip install numpy
(続)2.フォルダ内にファイルとフォルダが作成される
.venvの中にpython実行環境が構築=仮想環境、pipfileはpipenvのパッケージ管理ファイル
続②仮想環境に入り、ライブラリをインストール
5.インストールしたパッケージを確認(スキップ可能)
>pip list
による確認↓
6.shellから抜ける
>exit
仮想環境(/.vnenv) (参考)Appdata以下のpython
これが仮想環境による分離
③仮想環境とVSCodeの連携
1.pipenvで構築した仮想環境があるフォルダをVSCodeから開く
2.適当なpythonのコードを実行すると、構築した仮想環境で実行される
自動で選択されている
VSCodeとPython仮想環境
• VSCodeとpipenvで構築した仮想環境を紹介
• インタプリタ選択で構築した仮想環境無しでも実行可能
インタープリタの選択で使用するPythonを指定できる
/Appdata ./.venv
pythonインストール下の
環境を使用
pipenvで分離した環境を
使用
選ぶことができる
.venvがあれば自動選択
VSCode無しで実行
• pipenvで構築した環境で実行(下記2つ)
• ①仮想環境に入って実行
• >pipenv shell
• 仮想環境に入った後は、「>python ○○.py」で実行
• ②仮想環境を使って実行(「.venv」があるフォルダに移動)
• >pipenv run [コマンド]
• 例:python実行環境の確認。「*」がある環境が実行している環境
注意事項
• pipenvによる仮想環境
• フォルダ名、パスは移動しないほうが良い
• フォルダ情報が絶対パスで書かれている。下記コマンドでパスの情報が見れる。
• >pipenv –venv
appendix
JupyterNotebookを使う
• データサイエンス向けの開発環境[1]
• VSCode上でも開発可能
[1] https://jupyter.org/ (accessed 2021/8/5)
①JupyterNotebookを使う環境を設定
1. JupyterNotebook形式のファイルを作成する
・コマンドパレット(Ctrl+Shit+Pを同時に押す)で「Create New Blank Notebook」
・新規ファイル作成で拡張子を「.ipynb」
2.「IPykernel」のインストール
セル内で適当な計算を行い実行すると下記メッセージが表示される。
途中でファイアウォールの警告がある。許可を押す。
②JupyterNotebookを使う
1.セルにコードを入力する
2.Ctrl+F5でセルの実行を行う
※セル毎に実行、すべて実行が出来る
③JupyterNotebookの設定
結果の出力結果をスクロール
下を追加
"jupyter.experiments.optOutFrom": ["NativeNotebookEditor"],
下記を削除
"workbench.editorAssociations": [
{
"viewType": "jupyter.notebook.ipynb",
"filenamePattern": "*.ipynb"
}
],
好みはあるが下記を設定すると見やすいかもしれない
JupyterNotebookが使用するPythonの環境↑赤破線枠
JupyterNotebookはPythonの環境に接続して実行する(サーバーとクライアントの関係)
VSCodeでJupyterを使うときセル内でexit()するとカーネルが終了されるので注意
終了した上で実行すると「Direct kernel connection broken」と表示される。
pipenv パッケージ管理 コマンド一覧
パッケージのインストール
>pipenv install [package]
パッケージのアンインストール
>pipenv uninstall [package]
パッケージの更新
>pipenv update
pipfile.lockの更新
>pipenv lock
pipのrequirement.txtからインストール
>pipenv install -r ./requirements.txt
pipenvからrequirement.txtの生成
>pipenv lock -r
環境構築するときに開発環境だけで使うパッケージ、本犯環境で使うパッケージを区分け可能
>pipenv install --dev
>pipenv install
pipenv 仮想環境の削除
仮想環境に入って仮想環境の削除
>pipenv shell
>pipenv --rm
仮想環境の削除
>pipenv --clean
「.venv」フォルダを強引に削除してもよさそう

開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython