木戸じゅん。

~副題 is Nothing~

プログラミングも基礎が大切! paizaラーニングのスキルチェック100問超を解いた感想まとめ

プログラム開発言語のe-ラーニングに、『paizaラーニング』というWebサイトがある。

paiza.jp

このサイトでは、『プログラミングスキルチェック』を行うことができる。スキルチェックはS~Dまでランクが有り、最も難しいのがSランク、最も簡単なのがDランクだ。

スキルチェックにて選択した言語はPython3だ。それ以外の言語は学んだことがない。最も得意とするVBAは、残念ながら選択できない。

f:id:kidomeguru:20181118003029p:plain

今回は、そのDランクスキルチェックにある100問超を解き終わっての感想を綴っていく。

 

Dランクスキルチェックは経験値稼ぎ

Dランクの問題は、超初心者向けというだけあり、ある程度学習した人間にとっては朝飯前の難易度だ。

ドラゴンクエストシリーズでいえば、スライムを倒して回るようなもので、私がやったことはスライム100匹以上を屠ったことと同じだ。

 

スライム殺しといえば、『スライム倒して300年、知らないうちにレベルMAXになってました』という作品がある。

私はこの作品を先日買ったばかりなのだが、私がスキルチェックでやっていることは、この作品の主人公がやっていることと同じである。

 

『スライム倒して~(以下略)』のあらすじを説明。主人公アズサは現代日本ブラック企業に務め、『社畜』と揶揄される生活を送り続け、とうとう過労死してしまう。その後で、アズサにはファンタジー世界へ転生するチャンスが与えられ、「のんびりスローライフを送る」ことを望んだ主人公は、不老不死の魔女として転生。生活費を稼ぐために『スライムを最低20匹倒す』を日課にし、300年間同じ生活を続ける。ある日他人に勧められてレベルを測ってみたら、レベル99という最強無比の存在になっていたことに気づく。それ以来『最強の魔女』の噂を聞きつけた冒険者・ドラゴン・精霊などと関わりあいになりながらも、しかしスローライフを送るという絶対条件は崩さないよう、主人公は奮闘するーーというのがあらすじだ。

 

『スライム倒して~(以下略)』の主人公、アズサが強くなるためにしてきたことは、「スライムを倒す」というアクションを愚直に繰り返しただけだ。300年もの間、転生直後とまったくライフスタイルを崩さない彼女だが、それは現代日本で辛い思いをしてきた反動だろう。小さなことでも、ひたすら継続していけば大きな結果につながる、ということを同作品では現している。

 

スキルチェックの話に戻ろう。私がDランクの100問を解いたことは、簡単に倒せる相手を倒してきたこととイコールだ。世の中には「難しい相手に挑んで人は成長するんだよ、ウオー」な人が少なからずいるが、私に言わせれば「まったくもってナンセンス」。

 

基礎の繰り返しが大切な理由

paizaラーニングのDランクスキルチェックは、以下のような出題形式になっている。

①お題に出された要件を満たすプログラムを作る

②制限時間有り

③「プログラムのテスト結果」+「解答時間の速さ」=スコア

スコアの高いほうが優れていると判定されるのは、言うまでもない。

 

同サイトのスキルチェックが面白いところは、上記①がバリエーションに富んでいることだ。規模の大きいプログラム作りでも、求められる機能を分解していけば単純なものばかりだ。その「単純なもの」を作り上げるスキルを、スキルチェックでは磨くことができる。

さらに言うと、要件を満たすプログラムを瞬時に考える瞬発力が鍛えられる。実は、プログラミングは処理効率を無視すれば、求められる結果を出すには複数のやり方がある。解答はいつも一つ、ではないのだ。複数ある解答の中で、どれを選べば最も速く回答できるか。それは繰り返しの中で身につけるしか無い。経験の差が如実に現れるところである。

 

技術において基本が大事と言われる所以は、そこだ。簡単なことを反射的にこなせるようにならなければ、身についたとは言えない。できるようになったからといってすぐに次のステップに進み、失敗する人は多い。失敗の原因のひとつは、基本を積み重ねてこなかったことにある。基礎からはじめて力をつけて、それから応用へチャレンジするのが筋道だ。突然得体の知れない力に目覚めて「見えるぞ……私にも答えが見える!」なんてことにはならない。そういうのは、大体が勘違いだ。

f:id:kidomeguru:20181118005514p:plain

 

もちろん、いつまでも基礎ばかりやっていてはいけないが、だからといって軽視したら爆死するので厄介だ。基礎と応用のバランスを取りながら学習していくのがベターだろう。

 

簡単な問題でも100問解くのは大変

paizaラーニングでDランクスキルチェックをやってみると、1問あたりの解答時間は1分少々~10分程度になる。1時間で約10問解けるので、10時間集中し続ければ100問解ける計算になる。

実際には、集中力が切れたり、休憩を挟んだり、用事があったりで、1日で100問解くのはなかなか難しいはずだ。私は累計3日かかった。最後のあたりは、1問解くごとに腕立て伏せをして頭と体のバランスをとりながら、なんとか100問解き終わった。

そして思ったのは、「自分はプログラミング好きなんだな」だった。大して好きでもない事柄に対して、私はここまで熱中できる人間ではない。今後どうなるかはわからないが、現時点ではPythonプログラミング学習は熱中できる趣味になっている。

今度はCランクスキルチェックだが、1問解いただけで「応用編に突入した」ことがわかった。こちらは少しずつチャレンジしていくつもりだ。

 

ん、『コードガールこれくしょん』?

f:id:kidomeguru:20181118011859p:plain

元提督の私がこんな餌に釣られ……

 

つら……

 

 

f:id:kidomeguru:20181118012242p:plain

 

Python初心者が「Excelのデータを読み込むプログラム」を作成する

プログラム開発言語をマスターするとはどういうことか(哲学)。

ãå²å­¦ã®æ¨å²å­¦ã®æ¨ãã®ããªã¼åçç´ æãæ¡å¤§

私はExcelVBAでマクロ作りを始めてから10年以上経ちますが、未だにマスターしたような気分になれません。

 

マスターする=極めるという意味なら、個人的に「開発言語を極めることはできない」と思うのです。「極めるとはこういうことだ」と言ってみたいですが。

いくら上達しても上には上がいるはずなんです。

しかし、誰かより下だからと言って、自信を無くすことはないはず。

複雑な要件のプログラムであっても作れるという自信が芽生えた時、ようやく「○○言語でプログラムが作れます」と言っても許されると個人的に考えます。

 

閑話休題

 

今回は、「保存済みExcelから値を取得する」という要件のプログラム作りに挑みます。

以前の記事では「PythonExcelブックへの書き込み」を行うプログラムを作りました。

kidomeguru.hatenablog.com

今回はその逆で、「ExcelブックのデータをPythonプログラムに取り込む」をやってみます。

それでは、始めましょう。

 

前準備 pipでOpenPyXLをインストールする

(以前の記事でも書いた手順ですが、再度記載します)

 

以下、Pythonがインストールされている状態でのpip利用手順です。 

手順① コマンドプロンプトを起動する (WindowsOSの場合)

Winキー+Rキー → 「cmd」と入力してEnter

f:id:kidomeguru:20181101130138p:plain

スタートメニューから起動してもOKです。

 

手順② 「pip install openpyxl」と入力してEnter

f:id:kidomeguru:20181101131204p:plain

自動的にOpenPyXLのインストールが始まります。

『>』マークの後ろでカーソルが点滅するようになったら、インストール終了です。

 

 手順③ 「pip freeze」と入力してEnter

これでインストールされているPythonライブラリが確認できます。

「openpyxl」が表示されていれば問題ありません。

f:id:kidomeguru:20181101131442p:plain

これにて「OpenPyXL」ライブラリのインストールが終わりました。

 

データを保存したExcelファイルを用意する

以下のような値の入力されたExcelブックを用意します。

f:id:kidomeguru:20181111224435p:plain(data.xlsxのSheets1シートの中身)

保存場所はパブリックユーザーのドキュメントフォルダです。

f:id:kidomeguru:20181111231658p:plain

 

pyファイルを用意する

拡張子pyのファイルにPythonソースコードを記述しますので、そのファイルを作成しましょう。

 

エクスプローラの表示タブで、「ファイル名拡張子」の項目にチェックを入れてください。すると、エクスプローラでファイルの拡張子が表示されます。

f:id:kidomeguru:20181111232048p:plain

エクスプローラで右クリック→新規作成→テキストドキュメントを選択します。

ファイル名を「read_xlsx.py」という名前にします(test.pyなどでも可)。

f:id:kidomeguru:20181111232315p:plain

警告メッセージが表示されますが、「はい」を選択します。

f:id:kidomeguru:20181111232353p:plain

すると、ファイル種類が「Python File」のファイルが出来上がります。

f:id:kidomeguru:20181111232433p:plain

 

pyファイルにソースコードを記述する

作成した「read_xlsx.py」ファイルにソースコードを記述するには、

右クリック→「Edit with IDLE」→「Edit with IDLE x.x(xx-bit)」を選択します(xは数字に読みかえてください)。

f:id:kidomeguru:20181111233449p:plain

何も書かれていないエディタが表示されます。

f:id:kidomeguru:20181111233554p:plain

そこに、以下のようなソースコードを入力します。

f:id:kidomeguru:20181111234138p:plain

 ソースコードの入力が終わったら、pyファイルはCtrlキー+Sキーで上書き保存して閉じます。

 

Pythonプログラムを実行する

プログラムを実行する場合には、エクスプローラでpyファイルを開きます。

f:id:kidomeguru:20181111234559p:plain

結果、上記のように表示されます。Excelブックの2行目以降の値を2次元リストに取り込むことができました。

Excelと比較してみましょう。

f:id:kidomeguru:20181111224435p:plain

 PythonプログラムはEnterキーを押下すると終了します(Press Any Keyと表示されていますが、気にしないでください)。

 

これにてプログラム完成です。

OpenPyXLは他にもいろんな機能を持っていますし、上記コードももっとスマートな書き方があるようですが、とりあえず今回はこんなところで。

上記のプログラムを、何も参考にせずに書けたら私も自信がつくんですが、まだまだこれからですね。

 

現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意

現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意

 

 

Python初心者が「結月ゆかりにブログ記事を喋らせるプログラム」を作ったので紹介する

先日、長らくお蔵入りにしていた「VOICEROID+ 結月ゆかり EX」のインストールを行いました。

どうしてかというと、Pythonで「結月ゆかりに喋らせるプログラム」を作ることができるという記事を読んで、「自分でも作ってみよう」と思ったから。

blog.sky-net.pw

 

紆余曲折ありましたが、どうにか作ることができました。以下の動画で動かしている様子を見られます。


【ブログ掲載用】結月ゆかりにブログ記事を喋らせるPythonプログラム

 

副産物として、Softalk(通称ゆっくり霊夢)に喋らせるプログラムも作りました。


【ブログ掲載用】ゆっくりにブログ記事を喋らせるPythonプログラム

 

練習用ではなくて、実際に役に立つプログラムを作るとなると、集中力が段違いです。着実にレベルアップしているというか、自己肯定感につながると言うか。

f:id:kidomeguru:20181107202103p:plain

(青空ドヤ顔ボーイ|ぱくたそ)

 

今後は、ブログ記事を書いたら音声も一緒に掲載するつもりです。

基本的に、私の記事は長文です。たぶん、読んでいたら疲れます。

耳で聞ければ、目で追わなくても済むようになります。再生ボタンポチ、は楽です。

 

これを機に、いろいろとブログ運営に役立てられるプログラムをつくっていきたいですね。

 

以下の書籍を、Webスクレイピング(ブログ記事の読み込みなどできる機能) づくりの参考にしました。

 

 

Python初心者がPythonで「読みにくいソースコードのプログラム」が作れるか挑戦する

PythonVBAを比較してみる記事第2弾です。

第1弾はこちら↓。

kidomeguru.hatenablog.com

 

【目次】

Pythonプログラミングの面白いところ

Pythonというプログラム開発言語は、

「誰が書いてもほぼ同じようなプログラムソースコードになる」

という面白い特徴を持ちます。

(プログラムソースコードとは「特定のプログラム開発言語で記述された命令文の集まり」)

ãæ©ã¿ãé ­ããããããç·æ§æ©ã¿ãé ­ããããããç·æ§ãï¼»ã¢ãã«ï¼å¤§å·ç«å¼¥ï¼½ã®ããªã¼åçç´ æãæ¡å¤§

プログラム開発言語に詳しい方ならご存知でしょうが、その界隈では「VBA」は好かれていない、というか嫌われている言語の代表格として挙げられることが多いのです。

理由は多々あると思いますが、そのうちの1つが「読みにくいプログラムが量産されやすい」というものです。

 

読みにくいコード、読みやすいコード

実際に、VBAで「西暦の年を入力したら平成の年を求める」というプログラムを書いてみます。

f:id:kidomeguru:20181104060942p:plain

プログラムを実行すると、入力画面が現れます。

「2018」と入力してEnterを押すと・・・

f:id:kidomeguru:20181104062830p:plain

以下のように平成の年を求めることができました。

f:id:kidomeguru:20181104062928p:plain

 

続いて、上記のプログラムを読みにくく書いてみましょう。

f:id:kidomeguru:20181104061404p:plain

これ以上読みにくくすることもできますが、私の精神にあくえいきょうがでそうなのでこれぐらいで……うごごご。

 

VBAの場合、上記2つのプログラムは、どちらの書き方であってもプログラムに求められる要件(西暦から平成の年を求める)は満たします。

読みやすくても読みにくくても動作するゆえ、「読みやすく書かなくても動けばいい」という考えで作られることがあります。

 

Pythonで読みにくいソースコードのプログラムは作れるか?

結論から言うと、無理でした

f:id:kidomeguru:20181104064523p:plain

Pythonの上級者なら読みにくくする方法も知っているかもしれませんが、初心者の私ではなるべく読みにくくしても上記のようにすっきりしたソースコードに。

f:id:kidomeguru:20181104065039p:plain

 

Pythonはコーディングに関する制限がVBAより多いのに、書きやすくなるように設計されているという、「そりゃあ好かれるわな」という凄い言語でした。

 

VBAで読みやすいソースコードを書く方法は、以下の書籍がわかりやすくてオススメです。この本↓は別ですが、なんでプログラミング関連書籍って論理的だけど冗長的な文体で書かれているんでしょうか……

ExcelVBAを実務で使い倒す技術

ExcelVBAを実務で使い倒す技術

 

 

Python初心者が「PythonでExcel操作するプログラム作り」に挑む

Python学習が本業のように思えてきた、Python初心者です。

本業の方がマンネリ化してきたせいもあるかもしれませんが……

 

もし、「副業禁止」を定めている会社に勤めている人が、

「ここでの仕事が副業です」って言ったらどうなるんでしょう?

面白そうではありますが、試す気にはなりません。

説æãåãããªã人ã®ã¤ã©ã¹ãï¼ç·æ§ä¼ç¤¾å¡ï¼

「ここでの仕事が副業です」

「お前は何を言っているんだ」

 

閑話休題

 

本日は私が日々使っている「Microsoft Excel」を、Pythonから操作するプログラムを作ろうと思います。

「やってみたい」とは思っていたのですが、Pythonの条件分岐と繰り返しを学習するまではやらないでおこう、というこだわりにより、これまで取りかかれませんでした。

 

「AI Academy」で条件分岐と繰り返しは学習してきたので、ようやく本日やってみようという運びになりました。

aiacademy.jp

それでは、始めましょう。

 

どうやってPythonExcelを操作するの?

Pythonのライブラリを使用して、Excelを操作します。

 

コンピュータ・プログラミングの話で「ライブラリ」と言った場合、リアルに置き換えて表現すると

DIY用のいろんな道具が入っているツールボックス

みたいなものです(例えは大体合ってます、たぶん)。

f:id:kidomeguru:20181101124351p:plain

ハンマーやノコギリを駆使して、カットした木材を釘で固定してやれば、(見た目はともかくとして)椅子が出来上がります。

 

Pythonという開発言語では(他の言語でもそうですが)、このライブラリを利用して色んな機能を実現するプログラムを作ることができます。

 

今回Pythonで使用するライブラリは「OpenPyXL」です。

以下のサイトを参考にして、ライブラリをインストールしていきます。

tonari-it.com

 

pipでOpenPyXLをインストールする

pip(ピップ)とは、Python公式のパッケージ管理ツールで、こいつを使えばライブラリを使用可能になります。

インストールと同時にそんな便利なものを付けてくれるなんて、Pythonは初心者に優しいですね。

 

ただし、pipはPythonをコンピュータにインストールしないと動作しないので、注意です。

Pythonのインストールから始めたい方は以下のサイトを御覧ください。

techacademy.jp

 

以下、Pythonがインストールされている状態でのpip利用手順です。

 

手順① コマンドプロンプトを起動する (WindowsOSの場合)

Winキー+Rキー → 「cmd」と入力してEnter

f:id:kidomeguru:20181101130138p:plain

スタートメニューから起動してもOKです。

 

手順② 「pip install openpyxl」と入力してEnter

f:id:kidomeguru:20181101131204p:plain

シークバーが100%になり・・・

f:id:kidomeguru:20181101130658p:plain

なにやら英語で話しかけられました。

f:id:kidomeguru:20181101130828p:plain

詳しくはわかりませんが、「Successfully」の文字があるからインストール成功だと思います。

 

 手順③ 「pip freeze」と入力してEnter

これでインストールされているPythonライブラリが確認できます。

「openpyxl」が表示されているから大丈夫そうです。

f:id:kidomeguru:20181101131442p:plain

 

[余談] ライブラリをアンインストールするには「pip uninstall ライブラリ名」と入力します。今回はやりませんが。

 

これにて「OpenPyXL」ライブラリのインストール終わりました。

続いてPythonプログラムを作ります。

 

Excelファイルを名前を付けて保存する

excel_control01.py」というプログラムを書いて・・・

f:id:kidomeguru:20181101133611p:plain

 実行すると、プログラムと同じフォルダに「test」というexcelファイルが作られました。成功です!

f:id:kidomeguru:20181101133730p:plain

 

ちなみに、ファイルの保存先を絶対パス指定するなら、以下のようにします。

f:id:kidomeguru:20181101134935p:plain

 

Excelシートを追加して値を書き出すプログラムを作る

Excelブックを作成→文字をセルに入力→シート追加→文字をセルに入力→上書き保存」するプログラムを作りました。以下はソースコード

f:id:kidomeguru:20181101152729p:plain

実行すると、「test」というExcelファイルが作成されます。

 

「test」を開くと、Sheetシートに文字列が縦方向に一文字ずつ入力され、

f:id:kidomeguru:20181101152915p:plain

Sheet1シート(追加したシート)には文字列が横方向に一文字ずつ入力されていることを確認できました。

f:id:kidomeguru:20181101153027p:plain

 

PythonExcel操作するプログラムを作った感想

調べることに疲れました。

プログラム自体は作れましたけど、普段ExcelVBAでやっていることを他の言語でやるのって大変です。

調べたいことは中々見つからないし……

ええ、まだまだ勉強が足りませんね!

 

現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意

現場ですぐに使える! Pythonプログラミング逆引き大全 313の極意

 

 

脱力しきったPython初心者が「乱数」を用いたプログラムを作る

今日は夕食を食べすぎました。お腹いっぱいで頭が弛緩しています。

長文が書けそうにないので、今回は「乱数」「繰り返し処理」で簡単なPythonプログラムを作ります。

 

「乱数」とは

ランダムな数のことで、次に何がでるか予測のつかないものです。

ゲームプログラミングではこれが頻繁に使われるそうです(ゲームを作ったことがないので聞いただけです)。

 

で、Pythonでこの乱数を使用する場合、以下のようにコーディングします。

f:id:kidomeguru:20181019203016p:plain

1行目でrandomモジュールをプログラムで使用できるようにします(インポート)。

 

2行目ではrandom.randintメソッドを呼び出します。

(1,99999)は、random.randintメソッドの引数で、1が乱数の最小値、99999が乱数の最大値です。つまり、1~99999の範囲の値をランダムで生成することができます。生成された値は変数「r」に格納されます。

 

「繰り返し処理」とは

プログラムの処理を決められた回数、もしくは条件を満たしている(または満たさない)間、同じ処理を繰り返し行うものです。前者の場合は以下のようにコーディングします。

f:id:kidomeguru:20181019204114p:plain

Pythonではfor文と呼ぶらしいです。VBAではForステートメントと呼びます。

上記のコードでは変数「cnt」が0~9の間同じ処理を繰り返します。

(1~10で繰り返したければ、range(10)→range(1,11)と書き換えます)

 

今回作るプログラムの内容は?

「これまで食べたパンの数」をたずねられたら「○○枚だ」と返します。

私はジョジョガンダムWも好きです。

 

出来上がったソースコードはこちら。

f:id:kidomeguru:20181019210546p:plain

10回繰り返す中で、生成した乱数を加算してゆき、繰り返しが終わったら集計した乱数の平均値を求めています。

自動的にカラフルになってすごく見やすい。

 

実行した結果

こうなります。

f:id:kidomeguru:20181019210102p:plain

ちなみに枚数ですが、1~99999の乱数なので、実行するたびに変わります。

2回めはこう。

f:id:kidomeguru:20181019210740p:plain

3回めは……と、もういいですね。

 

しかし、コーディングしていてなんだか違和感あるな、と思ったら変数定義していないからですね。

 

今回使用した教科書はこちらです。小難しい解説が少なくて初心者に向いています。その代り、初心者脱出した人にはレベルが低いと感じられるかも。

 

木戸めぐるのツイッターはこちら。

木戸めぐる (@kidoumawari) | Twitter

Python初心者がはじめてのプログラムづくり&はじめてのデバッグ、そして完成

Pythonの教科書を読みながらプログラムづくりします。

教科書はこちら(↓)。  

 

 

氏名と文字列を入力してセリフ形式にして喋らせるプログラムを作る

プログラムを作るために、ソースコードエディターを開きます。

IDLEを起動して、メニュー→File→New Fileを選択。

f:id:kidomeguru:20181015181449p:plain

起動したエディターにコードを入力していきます。

f:id:kidomeguru:20181015190112p:plain

入力が終わったら、ソースコードを保存します。

メニュー→File→Saveを選択。

f:id:kidomeguru:20181015182804p:plain

ダイアログで「Serifu1」という名前をつけて保存します。

f:id:kidomeguru:20181015183020p:plain起動しているPythonのアプリを閉じて、保存したファイルを開きます。

 

保存して実行! が、駄目……っ

やってみたら一瞬だけ黒いウインドウが開くだけで、氏名を聞いてきません。

なんでだろう、と思って再度エディターを開き、F5を押下すると、こんなポップアップが。

f:id:kidomeguru:20181015183919p:plain

・・・よくわかりません、先生。

OKを押すと、なにやら赤く点灯する箇所がありました。

f:id:kidomeguru:20181015184121p:plain

ああ、こうやって間違ったソースを教えてくれるのね。親切。

ただ、ExcelVBAのエディタに慣れていると、全角スペースが挿入されていても無視してくれるので、やりがちなミスです。

 

修正して再実行する

指摘された箇所を直し、ついでに入力待ちのマーク「>」を挿入し、保存し、再度実行します。

f:id:kidomeguru:20181015184652p:plain

やったぜ。

 

そして、3つの入力要求にすべて回答すると・・・

f:id:kidomeguru:20181015184844p:plain

こういう結果(↓)になりました。

f:id:kidomeguru:20181015184942p:plain

 

感想

ExcelVBAと同じような感覚でコーディングすると、今回のようなエラーを繰り返すので、切り替えが必要ですね。

そしてデバッグソースコードエディターでやるとよいとわかりました。

 

f:id:kidomeguru:20181015185643p:plain

Python初心者がVBAとPythonで「Hello」する

Pythonの場合 → Print(‘‘Hello’’)

VBAの場合      → Debug.Print ‘’Hello‘’

 

共通点としては、

・ダブルクォーテーションで囲む

・どちらのPrintも関数である

 

その程度しか浮かばないが、これだけで評価してもPythonが身に付けやすいとわかる。

むしろ短い分、VBAよりその点優れている……?

 

いや、まだ判断するには早計だ。

Python初心者が「ExcelにPythonが搭載される」と聞いて浮かれた話

VBAプログラミング歴15年の木戸めぐるです。

ExcelPythonが搭載されると聞いて、「おおっ!」と驚きと感動を覚えました。

 

VBAに未来はあるのだろうか、という疑問

私はVBAぐらいしかまともにプログラムを作れないほど特化してしまっていて、javaのようなメジャーな言語を学ぶ機会がなかったのです。

とりあえず勉強してみればいい、と言われればそれまでですが、どうにも腰が重くて。

気がつけば15年もVBAをやっていました。

 

そんなとき、「Excel VBA 将来」というキーワードで検索したら、以下のサイトにたどり着きました。

tonari-it.com

 

先程も書きましたが、喜びました。

 

喜んだ理由① Pythonを学習しやすい環境になる

プログラミング言語を学び始めるにあたって、何が一番面倒かというと、「開発環境」「実行環境」を整えることです(と個人的に思っています)。

インストール方法を調べたり、複数のファイルをダウンロードしてきたり、なんと面倒くさい。コーディングの前ですでに挫折しました。モチベーション保てないんですもの。

 

しかし、Excelという慣れ親しんだソフトウェアで使えるとなれば、話は別です。

いつからExcelPythonが統合されるかは明らかではありませんが、希望があればモチベーションも上がろうってものです。

 

喜んだ理由② 仕事のバリエーションが増える

ExcelPythonが統合されたら、私を含めてPythonを学び始める人が増えるでしょう。現在Pythonプログラマーの方もExcelを開発環境に使い始めるかもしれません。

そこで活かせるのが、これまで得てきたVBAの経験です。

 

VBAはそれ自体プログラム言語として優れています。

マクロ(VBAで作るプログラムの通称)とPythonの連携なんかできちゃったら、豊富な開発案件が生まれてくるでしょう。

Pythonでプログラムは作れるけどVBAは使えません」より、「Pythonはちょっとしたプログラムしか作れませんがVBAには自信があります」の方が受けが良くなるはずです。

世の中には「VBAとか金にならないから勉強しない」という悲しくなる意見もありますが、これからはPython+VBAで開発できるスキルが求められるかもしれません。

予想ですけどね。

 

未来のために今できることをした

とはいえ、喜んでいるだけではいけません。

いつExcelPythonが搭載されてもいいように、Pythonの学習を始めることにしました。

さしあたって、以下のサイトを参考にPython(3.7.0)をインストールしました。

techacademy.jp

 

公式サイトやインストーラーは英語ばっかりでわかりにくかったんですが、とりあえずインストールは無事に終わりました。

 

どうやってソースコード打ち込むの?

VBAばっかり使っていたせいで開発環境(エディター)をそれとして意識していませんでした。

どうすればいいのかわかりませんでしたので、ブックマークしていたサイトのひとつにおあつらえ向きの記事がありました。

tonari-it.com

どうやら、「IDLE」と呼ばれる素敵な名前の開発環境らしいです。

f:id:kidomeguru:20181010181157p:plain

Windowsの検索窓で「IDLE」を打ち込んだら、お目当てのアプリケーションが見つかりました。

 

プログラミングの基礎「Hello Python」してみる

f:id:kidomeguru:20181010181347p:plain

この画面は「IDLEのShellウインドウ」というようです。

 

早速、解説にしたがって「Hello Python!」入力してEnterしてみました。

f:id:kidomeguru:20181010181656p:plain

思わず「おお……おぉぅ」という声が。

こんなに簡単に使えるものなのか、Pythonすごい。

(プログラミング初心者丸出し感すごい)

 

エディタの終了は「exit()」でした。

f:id:kidomeguru:20181010182004p:plain

OKを押して終了。

 

「exit」だけ打ち込んだら「exit()でお願いします」とお断りされました。

f:id:kidomeguru:20181010182259p:plain

めっちゃ親切。

オープンソースの開発言語すごい。

 

 

というわけで、インストール→「Hello」→「Exit」までやってみました。

想像以上に使いやすくできているので、楽しく勉強できそうです。

明日は本屋で初心者向けのPython本買ってきます。