## プログラミングとは
### for リサーチャー
#### python勉強会 #3
---
## Excelマクロ(VBA)と汎用言語の比較から
---
## Excel(VBA)
- Excel上で動作する
### pros/cons
- 環境を整えやすい/有料
- 簡単なデータ処理に特価
- Macではやりづらい
---
## 汎用言語(Python)
- **汎用言語は様々な環境で動作**
### pros/cons
- 記述の自由度が高い/無料
- 少し難しい
- ※昔に比べたら簡単にはなってる?
- オープンソースで多様な知見が集まっている
---
## 処理系の違い
- 処理系=ゲームハード
- ソフト=プログラミングする内容
- 処理系が異なることで
- VBA
- Excelのアドインとして書く
- Python(汎用言語)
- **テキストファイル**で書く
---
## テキストファイル
> テキストファイル (Text File) は、文字など文字コードによって表されるデータだけが含まれるファイルのことで、ファイルフォーマットの一種と見なすこともできる。....
[テキストファイル:wikipedia](https://ja.wikipedia.org/wiki/%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB)
---
## テキストファイルの基礎
- フォーマット
- csv/tsv
- json
- xml
- 文字コード
- UTF-8
- Shift-JIS
---
## MS-Officeのファイルもテキストファイル
- xml形式のファイルをzip化
- オープン仕様
- だから、Excelがなくても操作できる(はず)
- 本来は。。
---
## テキストエディタ
- 様々なフォーマット。文字コードのファイルを開けるもの
- プログラマはIDEを使うことも
- エディタ
- [Atom](https://atom.io/)
- 開発環境
- [Visual Studio Code](https://code.visualstudio.com/)
---
## 処理したいデータは?
1. ファイル
2. ネットから取得
3. データベースから取得
---
## ファイルで提供されるデータ
- ロウデータ(csvファイル)
- 写真・画像データ(jpegファイル)
- 報告書(PDF)
=> 一般ユーザには何らかのファイルで与えられる事が多い
---
## ファイルとは
- OSで定義されたデータのまとまり
- 初心者の実質的なプログラミングではファイルの入出力がスタートライン
- [【Python】ファイルの読み込み - Qiita](https://qiita.com/Cesaroshun/items/b331844a54d3618c4c3a)
---
## 型
- データの性質を示す
- [VBAの型](http://officetanaka.net/excel/vba/variable/03.htm)
- [PYthonの組み込み型](https://docs.python.org/ja/3/library/stdtypes.html)
- 【TIPS】自分が操作しようとしている変数の型を意識
---
## メソッド/関数/処理
- [関数 (Visual Basic for Applications) | Microsoft Docs](https://docs.microsoft.com/ja-jp/office/vba/language/reference/functions-visual-basic-for-applications)
- [組み込み関数 — Python 3.7.3 ドキュメント](https://docs.python.org/ja/3/library/functions.html)
- [Python: オブジェクトのメソッド一覧を取得する - Qiita](https://qiita.com/suin/items/b15f908aaf8023a8a1fc)
---
## 制御構造
- 順接
- 書いた順に実行する
- 反復
- for/while
- 分岐
- if-then-else
---
## データ構造
- 配列/リスト
- スタック/キュー
- 連結リスト
- 連想配列/ハッシュ-
- 木構造
- グラフ構造
---
## オブジェクト指向
- データと処理のまとまり
- 階層的な親子関係
---
## エラー
- 文法エラー
- 文法的に誤ってる
- 案外わかりにくい
- その他のエラー
- 型が誤っている・0で除算した
- Exception
- 実行時例外
- 変数にNoneが入っているなど
[Pythonの基本的なエラー一覧とその原因の確認方法 | note.nkmk.me](https://note.nkmk.me/python-error-message/)
---
## やりたいことを探す
- ライブラリを見つける
- とにかく検索する
- versionを確認
---
## ご質問/やりたいことの進捗共有
{"metaMigratedAt":"2023-06-14T21:51:56.365Z","metaMigratedFrom":"YAML","title":"Untitled","breaks":"true","slideOptions":"{\"transition\":\"slide\"}","contributors":"[{\"id\":\"02f58aa5-04c0-465f-aec0-48663806fdbe\",\"add\":3008,\"del\":584}]"}