きゃらりこ日誌

いまさらながら、Pythonをちょっとだけ触ってみた

Windows用ソフトの開発といえばC#が定番なのですが、最近流行りのPythonでも作れると聞いてちょっと興味がわき、ちょっとだけPythonに触ってみました。
どうせだったら新しいプログラミング言語に触れるのも良い機会だと思い、手を出してみた次第です。
今回は、Python.jpの「ゼロからのPython入門講座」を一通り終えてみた感想をまとめてみたいと思います。

文法がちょっと変?

最近のプログラミング言語は、C言語やPascalなどの文法をベースにしている印象があります。
しかしPythonは、さまざまな言語の良いところを取り入れているためか、少し独特な文法になっています。
たとえば、こんな感じです。

n = 0 for n in [1, 2, 3]: print(n) else: print('END')

制御構文はC言語のように波括弧で囲わず、コロンとインデントを使って書きます。
文末のセミコロンは不要で、付けることもできますが、1行にまとめて書くとき以外は使う機会はありません。
インデントには、半角スペース4つかタブのいずれかが使えます。
なおコーディング規約では、半角スペース4つの使用が推奨されています。
私はインデントはタブ派だったのですが、最近は他の言語でも半角スペース4つが主流のようなので、これを機に半角スペースに変えようかなと思いました。

またelse ifがelifと略されていたり、関数定義がfunctionではなくdef(しかもdefineですらない!)だったりすることに少し違和感を覚えました。
定数の配列版のような存在である「タプル」というデータ型が用意されている一方で、定数を定義する仕組みがなかったりするのも奇妙なところです。
for文の構文も独特で、ループが正常終了したときに実行されるelseがあったり、条件分岐にはswitch文の代わりにmatch文を使ったりします。
一方、for文やwhile文だけで充分だという理由で、do-while文が用意されていないというのは意外でした。

外部ライブラリ

Pythonの大きな魅力として、外部ライブラリの充実ぶりが挙げられます。
Perlでいうところの、CPANのようなものですね。
中でも、公式が管理している標準ライブラリだけでもかなりのことができるそうですが、第三者が作成した外部ライブラリを使うとWeb APIを手軽に叩いたり、AIを使ったりすることができるそうです。
ただ、第三者が作成した外部ライブラリの中には、長期間のメンテナンスという面で少し不安が残るものもあるようです。
私はHot Soup Processor(HSP)でプログラミングをした際、第三者が作成した外部DLLライブラリが古いWindowsにしか対応しておらず、目的のライブラリが使えなかった経験があります。
このときの教訓を踏まえると、Pythonでも標準ライブラリ以外の外部ライブラリには依存しすぎないほうが良さそうですね。

Google Colaboratory

あと、Googleが提供するGoogle Colaboratory(通称 Google Colab)を使うと、Googleアカウントさえあれば、ウェブ上でPythonの実行環境を無料で利用できます。
ちょっとした実験や動作確認をする程度であれば、有料プランに入らずとも、無料プランで充分です。
「ゼロからのPython入門講座」でも、Google Colaboratoryの使用を勧めています。

昔のプログラミング入門といえば、開発環境をインストールして設定するところから始めていましたが、そうした手間をほとんど意識せずに始められるというのは、本当に便利な時代ですね。

(イメージ)
(イメージ)

まとめ

今回、私がPythonを一通り触ってみて感じたのは、「ちょっと変わった言語だな」ということでした。
C言語系の文法に慣れていると、戸惑う場面も少なくありません。
ただ、まだ入門講座を一通り終えただけです。
まだコマンドラインで動くものでしかなく、GUIで動くプログラムは作っていません。
本当の意味で理解したといえるレベルに達するには、実際に何かソフトを作ってみる必要があるでしょう。

この先Pythonを本格的に使うようになるのか、それとも少しかじっただけで終わるのか、それはまだ分かりません。
ただ、流行りのプログラミング言語がどんなものなのか、自分の手で確かめられたのは良い経験でした。