見出し画像

Python

Pythonとは


 読み方は「パイソン」。オランダ人のグイド・ヴァンロッサム氏が開発したオープンソースで運営されているプログラミング言語。Web開発やデータ分析など、さまざまな分野に使える汎用性の高い言語です。「人工知能(AI)」をはじめとした先端技術の開発で人気が高く、「ChatGPT」もPythonで開発されている。

Pythonの特徴


  • シンプルで短いコードで記述できる

  • 動作確認が簡単にできる

  • 幅広い用途に活用できる

  • フレームワークやライブラリが豊富

シンプルで短いコードで記述できる


 コードを書きやすく読みやすくするために生まれたプログラミン言語のため、だれが書いても同じようなコードになるようになっている。「オフサイドルール」初稿というコードの書き方の規則があり、行頭をインデント(字下げ)することによって文の塊を指定するというプログラミング言語の規則をいう。

例 画面にHello World!と表示させるコード

print("Hello World!")

動作確認が簡単にできる


 プログラムの主な実行方法は「コンパイラ型」と「インタプリタ型」の2種類だが、Pythonはインタプリタ型言語。
 プログラムのコードは人間が理解できる英単語などを組み合わせて表現するのが、コンピューターは「0」と「1」を組み合わせた「機械語」しか理解できないため書いたコードを機械語に変換する工程が必要。コンパイラ型言語だと事前にプログラム全体を変換する必要があり、コードに問題があるとエラーで変換が失敗しコードを実行できない。インタプリタ型言語のPythonだとコードはプログラム実行時に1行ずつ機械語に変換されるため、コードに問題があっても問題箇所まではプログラムを実行できる。よって書いたコードをすぐに実行できるためプログラムの動きを確認しながらリアルタイムな実践学習が可能。

幅広い用途に活用できる


  • WEBアプリケーションやAIの開発

  • WEBデータの収集と解析(スクレイピング)

  • データ分析

  • ブロックチェーン技術の開発

WEBアプリケーションやAIの開発


 「YouTube」「Instagram」「Dropbox」などのWebアプリケーションの開発にもPythonが使われている。PythonはWebアプリケーション開発に使えるフレームワークが豊富なため効率的に開発できるメリットが大きい。
 またChatGPTの開発にも使われるほどAI開発におけるPythonの需要は高い。AI開発に使えるフレームワークやライブラリが多い。AI分野のトレンドは、人間の脳をコンピューターで再現する「機械学習」や「深層学習」。機械学習では学ぶ方向性を人間が「特徴量」で示しているが、深層学習では「何を学ぶべきか」さえもコンピューター自身が見つける。また統計処理や数値計算を得意とする。

WEBデータの収集と解析(スクレイピング)


 Web上のデータをプログラムにより収集・解析する「スクレイピング」にもPythonがよく使われる。ショッピングサイトの商品データを収集してマーケティングに活用するといったスクレイピングも可能。膨大に存在するWebサイトからデータを収集するとき、1つひとつ手作業でアクセスするのでは、膨大な時間がかかりるが、スクレイピングによりデータ収集を自動化すれば、飛躍的な業務効率化につながりる。また、機械学習や深層学習を取り入れたAIの開発にあたっては、膨大な学習データの収集が欠かせない。Pythonだと、BeautifulSoup4などのライブラリで容易にスクレイピングが行えるためAI開発とも相性がよい。

データ分析


 データの処理・分析に役立つライブラリが豊富にあるため、ビッグデータの活用で使われることも多い。データ分析のエキスパートである「データサイエンティスト」の多くもPythonを実務で活用している。データを高速処理できる「pandas」や、高度な数値計算が行える「Numpy」など、豊富なPythonライブラリが強み。また、経営に関するビッグデータを可視化・分析できる「BIツール」を使うときにもPythonは役立つ。BIツール「Tableau(タブロー)」にはPythonとの連携機能があり、Pythonで高度なデータ分析が可能。

フレームワークやライブラリが豊富


  • Django:WEBアプリケーション

  • Flask:WEBアプリケーション

  • BeautifulScop4:スクレイピング

  • TensorFlow:機械学習