目次
- どうしてExcelの操作でPythonを使うべきなのか
- Pythonの特徴1:予約語が少ない
- Pythonの特徴2:インデント(字下げ)が文法である
2020.10.12
多くの方が普段の業務で普通に使っている表計算ソフト、Excel。
その操作を現在最も注目を集めるプログラミング言語、Pythonで行えることをご存じでしょうか?
汎用性の高いPythonを使うことで、さまざまな業務効率化を実現できるかもしれません。
そんなPythonによるExcel操作を全4回に渡って解説するのがSchooの授業『Excel×Pythonで業務効率化』です。すべての授業で講師を勤めるのは株式会社イーザー代表取締役副社長の金宏和實(かねひろ・かずみ)先生。
第1種情報処理技術者の資格を持ち、開発業務とライター活動の両方を兼務。これまでに20冊以上の書籍にかかわってきた金宏先生の講義を通してPythonについて知ることで新しいExcel操作の王道を無理なく身につけることができるでしょう。
すると、下図のように結果がターミナルに表示されました。
予約語の数は35で、その下に書いてある[‘False’, ‘None’,~ ‘yield’]までの単語が予約語一覧です。数えてみれば35個単語が並んでいることがわかるでしょう。
Pythonの予約語は上記の35個であり、これはほかの言語に比べて少ないといわれているということです。「他のプログラミング言語だと50とか60とか言われている場合もあります」と金宏先生。
予約語は単語一つ一つがそれぞれ意味を持ちます。「それぞれの意味についてはゆっくり解説していきます」ということです。
ここでリアルタイム受講生の方から寄せられたのが「ビジュアルスタジオコード、これは何をしている画面なのでしょうか」という質問。Schooの授業はリアルタイムで視聴している場合、コメント欄から疑問に思ったことを直接書き込むことができます。その内容が受講生代表や先生の目に留まった場合は、授業中に解説が受けられます。
上記の質問に対する先生の答えは「ビジュアルスタジオコードはMicrosoftが提供しているIDE(統合プログラミング開発環境)です。これを使ってプログラミングの編集、文法チェック、プログラミングの実行をすることができます」というものでした。授業のほかの部分ではビジュアルスタジオコードのインストール方法もしっかりと説明されます。
今回取り上げた授業はシリーズの第1回「Excel×Pythonで業務効率化」です。第2回では「PythonでExcelシートを扱うには」、第3回では「シート間の転記処理をPythonで作成」と題してより実践的な内容が解説されます。
PythonでExcelを使いこなせるようになりたい人は必見です!
『Excel×Pythonで業務効率化 第1回 Python×Excel:Pythonの基礎を学ぶ』
http://schoo.jp/class/7163/room
文=宮田文机
ペンシルからのプッシュ通知を設定しておくと、新着記事のお知らせなどをブラウザ上で受信できて便利です。
通知を受信しますか?
先生によって説明されたPythonがシンプルな言語である理由の2つ目は、「インデント(字下げ)が文法である」ということです。
「他のプログラミング言語にない特徴なので、まずこのことを理解しないとプログラムがなかなか思った通りに書けません」と先生は断言します。
この内容もビジュアルスタジオコードにて実際にプログラムを記述しながら説明されました。
実際に記述されたプログラムコードは以下の通りです。
X = 100
Y = 200
a =True #TrueからFalseにする
if a:
x -= 100
y -= 200 #インデントを削除してみる
print(x,y)
x」「y」はともに変数で、それぞれ「100」「200」という数値が代入されています。その下では変数aに真偽値にあたるTrueが代入されています。そして、「if」以降の文で“もしこの後の条件がTrue(真)だったら条件が成り立つのでifの下に書かれてある「x -= 100」と「y -= 200」を実行する”という内容が記述されています。そしてその下の「print(x,y)」で最終的な「x」「y」の値が出力されます。
そのプログラムは実行され、以下のようにターミナルに答えが出力されました。
「a=True」と定義されているため、if以下の条件は実行され、「x」「y」ともに「0」と出力されています。
前述の「if」の条件が当てはまる部分(=ifブロック)がほかの部分と比べて字下げして記述されていることにお気づきでしょうか?
もしもこのインデントが削除されるとプログラムの実行結果は変わってしまいます。なぜならPythonはインデントでifブロックの範囲を判定しているからです。
ちなみにCやJavaといったプログラミング言語の場合はインデントの代わりに「{}(中カッコ)」が用いられるということです。
Pythonはインデントを文法に含めることで、記述する文字数を減らしています。だからこそ、シンプルな言語と称されるのです。
授業ではほかにも「ライブラリが豊富」「VBAとの違い」といったPythonの特徴についてビジュアルスタジオコードでの演習を交えつつ先生から直接解説されています。