「日経ソフトウェア」に掲載されていた「Python入門プログラミング」の特集記事を読みながら、少し勉強をしてみました。
7Lesson構成の記事で、既にLesson4迄をザッと読みつつ実際にコードを入力して実行してみました。
実はここで「Python学習記」を書いていこうと思っていましたが、元が特集記事だけに必要最低限の事しか書いて居らず、豚独自にまとめ直して記事に書くという事は難しいので、単純にLesson幾ら迄進んだのかという報告だけにする事にしました。
今回はPython公式のサイトからダウンロードした物では無く、「Anaconda Individual Edition」を使用しました。書籍によってはPython公式からダウンロードした物を取り上げていたり、Googleのサーバを使って遠隔実行させるもの、Anacondaを使うものと区々なので、豚のような初学者には戸惑うところです。
https://www.anavonda.com/products/individual
のWebページの中の「Download」を選択。更に自分の環境に適したインストーラーを選びます。
今回参考にしている記事はPythonの対話モードと言うインターフェイスを使って、コードの入力と実行を行います。
対話モードは所謂DOS窓の様な物で、ビジュアルプログラミングに慣れた人は少し戸惑うかも知れません。豚はバリバリのMS-DOS世代なので、この方法が一番落ち着きます。コードの入力も実行もこのDOS窓もどきから行うので、ウィンドウを持つ普通のアプリが書けるのかと思いがちですが、
import tkinter
root = tkinter.Tk()
label = tkinter.Label(root, text="Hello Python")
label.place(X=40, y=80)
root.mainloop()
以上のコードで小さいウィンドウが開き、中には「Hello Python」と表示されているはずです。
豚にはまだこのコードが何を意味しているのかははっきりとわかりません。ただC++的に解釈するとすればtkinterと言うライブラリを取り込んで、rootにはターゲットとなるウィンドウのハンドルを取得します。
labelにはtkinterライブラリのLabelと言う関数に、引数(「ひきすう」と読む)として描画対象のウィンドウのハンドルと表示する文字列を渡し、戻り値として表示された文字列のオブジェクトが渡されます。そしてそのオブジェクトの持つplaceと言う関数で、文字列の位置を調節します。
最後のroot.mainloop()が何を意味しているのかはわかりません。メッセージループを処理しているのか、単純に永久ループを現しているのか……。
以上は豚のあやふや知識をC++に当てはめてみただけの物なので、実際は全く違うのかも知れません。
以上がLesson1で学んだところでした。Lesson4まで一気に書くととても冗長な記事になってしまうので、今回はここまで。