Best Engine

ITの最新動向を紹介する技術情報サイト

記事の
絞り込み

Technical Report

「新しい時代を担う」プログラミング言語Python(パイソン)

Pythonの「禅」

Pythonがインストールされている環境でpythonコマンドを実行し、「import this」と実行すると、The Zen of Python※3と題した19文のメッセージを見ることができます。その中には「複雑なものよりシンプルな方が良い」や「汚いより綺麗な方が良い」など、Pythonの源泉となるアイデアが記されています。これらのメッセージは一種の隠しコマンドとして追加された機能と言われていますが、私のPythonトレーニングでは必ず紹介しています。新しいプログラミング言語を習得する時にまず文法を意識しがちですが、その言語が持っている考え方が今後の役に立つことが多いからです。これからPythonを学習される方は、まずPythonの「禅」を習得すると良いでしょう。

Pythonの強力さ

前述した通り、Pythonはバッテリーが同梱されたプログラミング言語です。例えば、日付や時刻といったよく使われるデータ、正規表現やファイルアクセスなどの便利な仕組み、更にはCSV、JSONなどのデータ形式といった、一般的なプログラムでよく使われるものが揃っています。また、ネットワーク経由でのHTTPアクセス、HTTPサーバの実装といった、ITの仕組みを理解して作らなければならないものもライブラリとして提供されており、数行書くだけでHTTPクライアントやHTTPサーバを実装できます。

近年のビッグデータ解析においてはNumPy※4やSciPy※5と呼ばれる高度な数値計算用ライブラリが人気です。Matplotlib※6という、グラフ描画のためのライブラリがあるため、データ解析の結果をグラフに表すことも簡単にできます。更に、機械学習やディープラーニングにおいてはscikit-learn※7やGoogle社が開発したTensorFlow※8なども人気です。

Pythonは数値科学計算の分野において古くから研究・開発を行っているコミュニティがあり、Pythonに専門的なライブラリが多いのはそのためです。コミュニティが活発なのはとても大事なことで、ライブラリを強化できる良いスパイラルが生まれているといえます。

Pythonの今後

冒頭で述べたIEEE Spectrumのランキングでは現在のIT技術の礎を築いたC言語やJavaといった有名な言語を抜き1位を記録するなど、世界的にPythonが注目されているのがわかります。

また、習得が容易なことからPythonはインフラエンジニアにも注目されています。クラウドサービスの登場によりプログラムで解決できることが増え、今までプログラミングに馴染みのなかったエンジニアもその必要性からPythonを習得しています。

Pythonはよく「グルー言語(糊付け言語)」と呼ばれるのですが、様々な分野にまさに糊付けするかのように活用範囲を拡大しており、その勢いは広まる一方です。今後もPythonの勢いは衰えることなくグルー言語として広がっていくことが予想されます。皆さんもこれを機会にPythonに挑戦してみてはいかがでしょうか。

  1. https://www.python.org/dev/peps/pep-0020/
  2. http://www.numpy.org/
  3. https://www.scipy.org/
  4. http://matplotlib.org/
  5. http://scikit-learn.org/
  6. https://www.tensorflow.org/

記載内容は掲載当時の情報です。最新情報と異なる場合がありますのでご了承ください。

.