なぜPythonなのか

2021年6月12日

〇経緯

私は理系出身なものの工学系ではなく、学生時代はプログラミングとは無縁の生活でした。

社会人になってからも仕事でプログラミングを使うことはなく、今の会社にはおそらくプログラミングができる人はいません。(少なくとも業務で何か使ってるという話は聞いたことがない。VBAくらいならいるかも。)

過去に「これからはITの時代だ!」「プログラミングができるのはあたりまえの時代になる」なんて言葉に踊らされてちょっとかじってみたことはあるものの、なんとなーくこういうものなのかなと理解はしても、『で、結局それで何ができるの?仕事の役に立つの?』と考えた時に何も思いつかず、結局止めてしまいました。

※かじってみたのはJava、JavaScript、PHP。
よくある「これから学ぶのにオススメの言語〇選」、みたいな記事を参考に基礎を学んでみたのですが、それを使って何をするのかというところを思いつくことができませんでした。
もちろん本当はどの言語も色んな事ができるのでしょうが、私の仕事は現場での製造がメインでパソコンでは書類作成やちょっとしたデータ集計程度。趣味でもアプリを作ったりホームページを作ったりというのにはあまり興味がなかったため、活かし方がわかりませんでした。

そんな私がPythonに興味を持ったきっかけは「退屈なことはPythonにやらせよう-ノンプログラマーにもできる自動化処理プログラミング-」という本の存在を知ったこと。
目次のPythonでできることの中に

  • Excelシートの取り扱い
  • 電子メールやSMSの送信

という項目があり、これは仕事で使えるのでは?と思い書籍を購入。勉強を始めてみました。

広告

〇Pythonを学んでみて

  • そもそもPythonで何ができる?
  • エクセルのマクロでいいんじゃない?
  • 他の言語じゃダメなの?

最初に言ってしまいます。
他の言語じゃダメなのかと聞かれたら他の言語を知らないのでわかりません(笑)

インターネットでPythonで何ができるのかを検索すると、

  • 機械学習
  • Webスクレイピング
  • Web操作
  • 大量のデータ処理

なんかが出てくるんですが、正直私の仕事ではそんなハイレベルなことはしてないのでそこまでは求めていません。
エクセルの自動化という記事もありますが、読んでみてもあまりピンときていませんでした。

学習を始める前の段階でこんなことができたらいいなと考えていたのは、

  • エクセルで作った進捗管理表の期限〇ヵ月前に通知メールを送る
  • エクセルの進捗管理表の期限が来ても完了していなければ、催促メールを送る
  • 製造における規格表一覧に間違いがないか自動でチェックして、間違いがあったらメールで通知する
  • 在庫管理表の在庫が切れたら、メールで通知する
  • 納品管理表で納品日を過ぎても納品されていなければ、メールで通知する

といったエクセルとメールを組み合わせる方法。
言ってしまえば事務作業の簡略化ですね。
上記の案件なんかは基本的には「毎日エクセルファイルを開いて確認すればいい」というものなのですが、はっきり言って毎日確認するのはめんどくさい。
それを何とかして簡略化できないかと。

実はエクセルのマクロでもOutlookからメールを送ることができます。
なので業務でOutlookを使用している人ならば、Pythonを使わなくてもマクロで実装すればそれで事足ります。
しかし私の場合は業務で使用しているのがGmailだったため、エクセルとGmailの両方を使える方法を探していて巡り合ったのがPythonでした。

先ほど挙げたこんなことができたらいいなは全てPythonで実現することができます。(たぶん…)
自分がやってみたことが、似たようなことをやりたいと考えている人の助けになってくれれば嬉しいです。

PythonPython

Posted by texa