今一番注目を浴びているのが、Pythonによる人工知能と機械学習の開発です。TensorFlowやPyTorch、Chainerなどディープラーニング用の有名ライブラリがいくつかあり、SciPy、NumPyなど科学技術と数学や統計用のフレームワークが充実しています。Chainerは日本企業のPreferred Networks社が開発しましたが2019年に終了しました。一方でTensorFlowはGoogle社が、PyTorchはFacebook社が開発したものです。どのライブラリも機械学習などをダイレクトに扱うことができます。
ウェブサイトの作成はPythonでももちろん可能です。Djangoなどウェブアプリケーションフレームワークが実装されています。DjangoはPythonのウェブフレームワークの中でも特に有名で、フロントエンド部分からデータベース接続部分まで必要不可欠なものが全て揃っています。また、2Dのレトロゲームや3Dのゲームも開発できます。例えば、Pygameと呼ばれるゲーム開発用ライブラリや2Dゲーム開発用フレームワークのCocos2dなどがあります。Pygameは断続的ですが、20年近く開発され続けているライブラリです。近頃はUnityなどが勢力を得ていることから導入する企業は少ないと言われていますが、情報が多く簡略的なブロック崩しなどのゲームであれば数百行のコードで書けてしまうことから今もなお人気があります。
ブロックチェーンとは、取引履歴を暗号技術によって過去から一本の鎖のようにつなげ、正確な取引履歴を維持する技術のことです。Pythonはそんなブロックチェーンのような金融やコンサルのフィンテック業界の基幹技術にも使用されています。HTTPリクエストを操作できる点や数値計算ライブラリが豊富な点、主要のライブラリであるhashibというハッシュ関数を備えている点の三つの理由からPythonが使われることが多いと言われています。
また、URLのリストを元にHTML情報をプログラムで取得してくる「クローリング」や、取得したHTMLから任意の情報を抜き出す「スクレイピング」という技術を導入し株価情報の最新値を自動で定期的に集めることができます。有名なスキルとしてSeleniumがあり、これを取り入れることで情報収集やブラウザの操作などができるようになります。
Pythonの強みは数値計算能力と連携可能なシステムの多さではないでしょうか。大量のデータを内部計算し読みやすい行列表に変換したり、数多くのエクセルデータを開かずに目的のデータのみ抽出し、別のアプリにコピーしたりと柔軟なデータ処理ができます。ライブラリも充実しており、数値計算を効率的に行なうNumPyやデータ解析支援機能のPandas、配列や行列の演算をするSciPyなどがあります。このようにデータ処理や分析、解析用のライブラリが充実している点が、AI開発分野の多くがPythonを採用している理由です。