Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Python開発環境構築ハンズオンセミナー

333 views

Published on

自学自習できるように、Python開発環境の構築を行うハンズオンセミナー用の資料です

Published in: Engineering
  • I pasted a website that might be helpful to you: ⇒ www.WritePaper.info ⇐ Good luck!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Python開発環境構築ハンズオンセミナー

  1. 1. Python 2019年10月4日 株式会社KIS 二見 孝一 Python開発環境構築 < はじめてのPython > 自学できる環境をセットアップするハンズオン
  2. 2. Python 2/30 1.時短のための事前作業 (1) インストールモジュールの準備 (2) モジュールのダウンロード 2.Python (1) Pythonの特徴 (2) 開発環境を支える強力なライブラリ群 3.開発環境構築 (1) 各種の学習サイト (2) Python公式サイト (3) Jupyter Notebook (4) Anaconda (5) Jupyter Notebookハンズオン (Anaconda) (6) Google Colaboratory (7) Google Colaboratoryハンズオン1 (8) Google Colaboratoryハンズオン2 (9) Google Colaboratoryハンズオン3 (10) Google Colaboratoryハンズオン4 (11) Google Colaboratoryハンズオン5 (12) 統合開発環境やエディタ (13) PyCharm インストール 4.まとめ (1) Pythonエンジニアへようこそ (2) ランチタイムミニセミナーの初試行 (3) ハイブリッド型人材 (4) オープンマイク 目次 【目次】
  3. 3. Python 3/30 1.時短のための事前作業 (1) インストールモジュールの準備 ■KISの社内ネットワークにつながる人 社内サーバーからローカルPCにコピー ⇒ Pathは事前にメールでお送りしています ■外部参加の人 インターネットサイトからダウンロード → 次ページ参照
  4. 4. Python 4/30 1.時短のための事前作業 (2) モジュールのダウンロード 1. Anaconda: Pythonは3系、OS別 https://www.anaconda.com/distribution/ 2.PyCharm:Communityが無償版 OS別 https://www.jetbrains.com/pycharm/download 3. Pleiades 日本語化プラグイン:OS別 http://mergedoc.osdn.jp/
  5. 5. Python 5/30 1.時短のための事前作業 (2) モジュールのダウンロード2 1. Anaconda: Pythonは3系、OS別 https://www.anaconda.com/distribution/
  6. 6. Python 6/30 1.時短のための事前作業 (2) モジュールのダウンロード3 2.PyCharm:Communityが無償版 OS別 https://www.jetbrains.com/pycharm/download
  7. 7. Python 7/30 1.時短のための事前作業 (2) モジュールのダウンロード4 3. Pleiades 日本語化プラグイン:OS別 http://mergedoc.osdn.jp/
  8. 8. Python 8/30 2.Python (1) Pythonの特徴 シンプルで読みやすい文法 強力な内省(イントロスペクション)機能 直感的なオブジェクト指向 手続き型のコードによる、自然な表現 パッケージの階層化もサポートした、完全なモジュール化サポート 例外ベースのエラーハンドリング 高レベルな動的データ型 広範囲に及ぶ標準ライブラリとサードパーティのモジュール 拡張とモジュールはC/C++で書くのが容易(Java、.NETも利用可) アプリケーションに組み込んでスクリプトインタフェースとして使える
  9. 9. Python 9/30 2.Python (2) 開発環境を支える強力なライブラリ群 1 ライブラリ 主な用途 NumPy 数値計算用で高速に行列やベクトル演算を行う Pandas データの読込みや欠損値処理など機械学習にも使う SciPy 科学計算用ライブラリ Jupyter Python の実行環境でコードと出力結果を記録可能 Matplotlib 棒グラフ、散布図、ヒストグラムなどをグラフ描画する plotly リッチでインタラクティブなグラフを描画する wxPython クロスプラットフォームのGUIライブラリ Kafka-Python Apache Kafka(分散ストリーミングプラットフォーム) のクライア ント PySpark ビッグデータ処理用に使う
  10. 10. Python 10/30 2.Python (2) 開発環境を支える強力なライブラリ群 2 ライブラリ 主な用途 TensorFlow Googleによるディープラーニング用ライブラリ scikit-learn 機械学習用訓練/検証データの分割や交差検証等が利用可 Theano 多次元配列を最適化して使用できる機械学習ライブラリ Chainer 動的に計算グラフを構築可能な日本製の深層学習ライブラリ Pytorch chainerからforkして作られたライブラリ Pyevolve Pure Python文法で記述できて遺伝的アルゴリズムで利用 Deap 拡張性が高くデータ構造からアルゴリズムまでカスタマイズ 可 Stan MCMCサンプラーでRからも使える。PyStanはラッパー Edward Tensorflowに基づいた確率的プログラミングライブラリ Keras TensorFlow や CNTK 、 Theano などに対応したラッパー
  11. 11. Python 11/30 2.Python (2) 開発環境を支える強力なライブラリ群 3 ライブラリ 主な用途 Requests Web API用でHTTP実装時のコードをシンプルに書ける Twython Twitter APIをより使いやすくするラッパー Django 全部乗せのWeb開発系フレームワーク kivy スマホやマルチタッチ対応のクロスプラットフォームUI cocos2d ゲームライブラリ lxml xmlやhtmlをパースしたりスクレイプに使用する Selenium lxmlと組み合わせてスクレイプに使用 Scrapy スクレイピングフレームワーク simplejson JSONのエンコード・デコードライブラリ Py2exe スクリプトをWindows用の.exeへ変換するライブラリ pep8 Pep8のコーディング規約に応じたソースコードチェック pdb ブレークポイント、シングルステップ実行等のデバッガ
  12. 12. Python 12/30 2.Python (2) 開発環境を支える強力なライブラリ群 4 各ライブラリについては書籍などを参考に
  13. 13. Python 13/30 3.開発環境構築 (1) 各種の学習サイト インストールなしでWebの学習サイト上に直接 コードを書いて実行する お手軽でどこでも利用可能 例:PROGATE https://prog-8.com/languages/python
  14. 14. Python 14/30 3.開発環境構築 (2) Python公式サイト Python本体をダウンロードしてインストール シンプルな方法だが、各種ライブラリ等は別途 インストールする必要がある https://www.python.org/
  15. 15. Python 15/30 3.開発環境構築 (3) Jupyter Notebook IPythonによるインタラクティブな開発が可能 で、初期学習にとても使いやすい 対話形式にコード実行できるのでデータ分析作 業などで使う人も多い 後継のJupyterLabのベータ版がリリース Anacondaでもインストール可能
  16. 16. Python 16/30 3.開発環境構築 (4) Anaconda 機械学習や科学計算ライブラリなどを一括でイ ンストールできるディストリビューション 開発するならAnacondaを使うと便利 ダウンロード時は、Pythonの2系と3系、OS別 のインストーラーから適切なものを選ぶ (余談だがアンインストールには1時間ほどかかるので注意) condaで提供されていないパッケージは、 Anaconda Cloud https://anaconda.org/ のパッ ケージ管理リポジトリが提供している
  17. 17. Python 17/30 3.開発環境構築 (5) Jupyter Notebookハンズオン(Anaconda) 1.モジュールをダウンロード(事前に作業済) https://www.anaconda.com/distribution/ 2.Anacondaをローカルマシンにインストール 3.Jupyter Notebookを立上げる 4.“Hello World”を出力する
  18. 18. Python 18/30 3.開発環境構築 (6) Google Colaboratory Googleが無償で提供している、クラウドでの Jyupter Notebookの学習用実行環境 Googleアカウントでログインして利用する ・環境構築が不要(ログインしてすぐ使える) ・Google Driveでチーム内共有が可能 ・高価なGPU(Tesla K80 GPU)が無料で使える ・連続で12時間までしか使えない 学習で使わない手はない!
  19. 19. Python 19/30 3.開発環境構築 (7) Google Colaboratoryハンズオン1 1.GCのサイトへログオンする https://colab.research.google.com/notebooks/welcome.ipynb?hl=ja 2.新しいノートブックを作成する 「ファイル」から「Python3の新しいノートブック」を選択 3.GPUを利用可能にする 「ランタイム」から「ランタイムの変更」を選択 ノートブックの設定のハードウェアアクセラレータをNoneからGPUに変更 4.セルを挿入する(テキストやコード) 「挿入」から「コードセル」を選択し挿入 5.コードセルにコードを書いて実行する print(“Hello World”) を実行
  20. 20. Python 20/30 3.開発環境構築 (8) Google Colaboratoryハンズオン2 ■Google DriveからColabをインストールする
  21. 21. Python 21/30 3.開発環境構築 (9) Google Colaboratoryハンズオン3 6.Google Driveと接続 以下のコードを実行しマウントする from google.colab import drive drive.mount('/content/drive') 7.LinuxのOSコマンドを実行する コマンドは先頭に ! を付けると実行できる !ls ←Linuxのlsコマンドの実行例 !pip list ←インストール済ライブラリの表示例
  22. 22. Python 22/30 3.開発環境構築 (10) Google Colaboratoryハンズオン4 8.Google Driveにファイルをアップロードする ウィンドウ左端の > ボタンをクリックしてメニューを展開する
  23. 23. Python 23/30 3.開発環境構築 (11) Google Colaboratoryハンズオン5 9.Googleドライブのファイルを操作する ファイルは /content/drive/My Drive/ でアクセス可能 例: !ls –l “/content/drive/My Drive/” ←ドライブのls 10.Pythonでファイルを操作する 今回は時間がないので割愛します
  24. 24. Python 24/30 3.開発環境構築 (12) 統合開発環境やエディタ いろいろあるのでお好みで。(;^ω^) Sublime Text ATOM Visual Studio Code Visual Studio Community Eclipse + PyDev Spyder Notepad++ IDLE PyCharm Vim などなど
  25. 25. Python 25/30 3.開発環境構築 (13) PyCharm インストール 1.PyCharmをダウンロードしてインストール (無償版はCommunity)https://www.jetbrains.com/pycharm/download 2.メニューを日本語化する Eclipseを日本語化する「Pleiades 日本語化プラグイン」を使用 OS別のプラグイン(Zip)をダウンロード http://mergedoc.osdn.jp/ 解凍してSetupを実行し、日本語化にPyCharmのexeを指定する 3.Pythonプログラムを作成しファイル保存する (Pythonプログラムファイルの拡張子は .py ) 4.PythonのプログラムをローカルPCで実行する Anacondaプロンプトを立ち上げる > Python ファイル名 で実行する
  26. 26. Python 26/30 4.まとめ (1) Pythonエンジニアへようこそ これからのセミナー等の開催予定 ■10月4日 Python開発環境構築ハンズオン https://kis-seminar.connpass.com/event/149303/ ■10月9日 Python入門(初学者向け) https://kis-seminar.connpass.com/event/146382/ ■12月7日 Python Boot Camp in 熊本(初学者向け) https://pyconjp.connpass.com/event/143197/ ■2020年2月 Pythonセミナー中級編(予定) ■2020年 初夏 PyCon Kumamoto(予定) 一緒に学んで行きましょう。
  27. 27. Python 27/30 4.まとめ (2) ランチタイムミニセミナーの初試行 業務で忙しい人のために、今回はお昼休み時間 帯のランチタイムミニセミナーを初試行 時間が足りなくてバタバタとなったかもしれま せんが、これからもミニセミナー開催します 企画の持込み、LTでの登壇も大歓迎です!
  28. 28. Python 28/30 4.まとめ (3) ハイブリッド型人材 ■カンパニー型人材 プロジェクト計画に沿ってきっちりと業務を遂行す る、ウォーターフォール型人材 ■コミュニティー型人材 コミュニティーの中で自律的に自走する、アジャイ ル型人材 両方のスキルを併せ持つ ハイブリッド型人材になろう!
  29. 29. Python 29/30 4.まとめ (4) オープンマイク イベントの告知やお知らせなどありませんか?
  30. 30. Python 30/30 連絡先 資料内容にご意見などありましたら、 ご連絡いただければ幸いです。 https://www.facebook.com/koichi.futami 二見 孝一 futami@kis.co.jp

×