いくつかの統計は、Python が世界で最も人気のあるプログラミング言語になったことを示しています。では、何が Python に普遍的な魅力を与えているのでしょうか?この多用途かつ強力な言語の機能のいくつかを見てみましょう。
Python: それがナンバーワンです
Python は 30 年を経て、かつてないほど強力になっています。この記事の執筆時点では、Python は Java と C を追い越して、世界で 最も使用されているプログラミング言語 です。Python は汎用プログラミング言語として宣伝されているため、これはさらに印象的です。それは必ずしも良いタイトルであるとは限りません。何でも屋だが何事も極めることはできないという古い格言が当てはまるかもしれません。幸いなことに、Python ではそれは当てはまりません。
Python は、Web 開発から 人工知能 、ゲーム開発からデータ分析に至るまで、世界中であらゆる分野で使用されています。これはほとんどの Linux ディストリビューション にプレインストールされており、すべての一般的なオペレーティング システムで利用できます。
Python は、1989 年 12 月に開始された趣味のプロジェクトとして グイド ヴァン ロッサム によって作成されました。Python は 1991 年 2 月 20 日に完全に機能し、1992 年にオープンソースとして一般公開されました。ロッサムがその名前を選びました。パイソンは 、モンティ・パイソンのフライング・サーカス と呼ばれる BBC テレビのコメディ シリーズを高く評価したためです。この番組の制作者は、「フクロウのストレッチングタイム」や「ヒキガエルの上昇の瞬間」などの他のタイトルも試しました。もし彼らがそのうちの 1 つに落ち着いていたら、Python が何と呼ばれていたかは誰にもわかりません。
Python はシンプルさを念頭に置いて設計されました。ロッサムは、コードが英語に似ていて、読みやすく、書きやすく、理解しやすいものであることを望んでいました。構文はシンプルで初心者にとって親しみやすく、経験豊富なプログラマーは他の言語から苦労することなく Python を使用できるようになります。
この基本的な単純さは、Python で複雑な問題を解決できないことを意味するものではありません。 Python の利点は、その単純でアクセスしやすい構文を使用して、その内部の機能をすべて利用できることです。このため、Python は迅速なアプリケーション開発に最適です。
試験スコア = 40
コースワークスコア = 55
プロジェクトスコア = 40
(course_work_score >= 40 および Exam_score >= 60) または (project_score + Exam_score >= 70) の場合:
print(“あなたは合格しました。”)
それ以外:
print(“失敗しました。”)
このコードの意図は誰にとっても明らかです。論理演算子を表すために
and
と
or
を使用していることに注意してください。対照的に、C では
&&
と
||
使用されます。 。
インタプリタとコンパイラ
Python はインタプリタ型言語です。プログラムのソース コードをファイルに書き込むと、Python インタープリターがファイルを読み取り、入力したコマンドを実行します。 C などのコンパイル言語では、プログラムの作成と実行の間に追加の手順が必要です。
コンパイラと呼ばれるソフトウェアがプログラム ファイルを読み取り、コンピュータが理解できる低レベルの命令を含むバイナリ ファイルを生成します。言い換えれば、ユーザーが書いたもの (C ソース コード) を取得し、コンピューターの母国語に翻訳されたコピーを作成します。コンパイルされたプログラムの場合、実行されるのはコンパイラからの出力 (バイナリ ファイル) です。
コンパイルされたプログラムの利点は、実行のたびにコードを解釈する必要がないため、解釈されたプログラムよりも高速に実行されることです。しかし、インタープリタ型言語の利点は、コンパイル手順がないことです。また、コンパイルには時間がかかる場合があります。 Python を使用すると、数行のコードを変更してプログラムを即座に実行できます。
Python は統合開発環境 (IDE) で作業するのが最も簡単で、Python 用の IDE は多数あります。Idle は その最初の IDE の 1 つです。 Idle ではコードを入力し、Ctrl+S を押して保存し、F5 を押して実行します。プログラムは Python シェルで実行されます。シェルに任意の Python コマンドを入力すると、すぐに実行できます。これにより、開発を支援する古典的な 読み取り、評価、印刷ループ 、または REPL が提供されます。
この小さなプログラムは文字列を定義し、いくつかの数値を加算し、合計を出力します。
geek_string = "これは元オウムです"
print(“合計 = “, 4 + 5 + 6)
ファイルを保存して F5 を押すと、プログラムが実行されます。合計を出力して終了します。 Python シェル プロンプトが表示されたままになります。この文字列はプログラムでは使用されませんが、シェルのコマンド ラインで
print
コマンドを使用すると、シェル内で文字列を参照できます。
プログラムの完了後に変数の値を確認すると、コード内で何が起こっているかについて貴重な洞察が得られます。
Python の独特な言語設計
Python は読みやすさと学習速度を重視して設計されているかもしれませんが、真のパワーも備えています。 オブジェクト指向プログラミング (OOP) を完全にサポートします。 OOP を使用すると、現実世界のアイテムとアイテム間の関係をプログラム内のオブジェクトとしてモデル化できます。クラスはオブジェクトの特性を定義し、そのクラスのオブジェクトが使用できる関数を含めることができます。
クラスは一種のテンプレートと考えることができ、オブジェクトはそのイメージ内に作成されます。クラスは既存のクラスから派生でき、元のクラスのプロパティを継承できます。 OOP には他にもたくさんの機能がありますが、これはアプリケーション内のオブジェクトとデータをモデル化する非常に強力な方法であると言うだけで十分です。他の多くのプログラミング言語も OOP 原則をサポートしていますが、Python の簡略化された構文により、その実装は最もアクセスしやすい言語の 1 つとなっています。
Python は、
if
分岐、
while
および
for
ループ、
match
ステートメント (他の言語の switch と同様) などの通常の実行フロー制御をすべてサポートしており、コードの繰り返しセクションを関数として定義できます。
Python の特徴の 1 つは、空白が意味を持つことです。他のほとんどの言語は、ソース コード内の空白を完全に無視します。 Python は インデントを 使用して、インデントされたテキストがコードのどのブロックに属しているかを示します。インデントは、他のほとんどの言語で使用されている中括弧を置き換えます。規定のインデント量はタブごとに 4 スペースですが、インデントが 1 スペース以上である限り、コード行がどのブロックに属しているかを Python が判断します。
価格 = 100
可処分所得 = 95.5
no_deal = “その商品は購入できません。”
価格 > 可処分所得の場合:
print(「高すぎる!」)
印刷(no_deal)
このプログラムを実行すると、次の出力が得られます。
インデントされたブロック内の両方の行は、インデントによって論理的にグループ化されているため、印刷されます。
お気づきかもしれませんが、Python では識別子として知られるすべての変数定義は、
int
、
char
、
float
などの型インジケーターではなく、変数の名前で始まります。 Python の変数は動的に型指定されます。変数が保持するデータのタイプを指定する必要はありません。 Python は実行時にそれを判断します。
また、行の終わりをセミコロン「
;
」やその他の特殊文字でマークする必要もありません。これにより、コードの外観がより自然になり、乱雑に見えなくなります。
標準ライブラリとその他のライブラリ
プログラミングとは、望ましい最終結果が得られるように、プログラミングしている言語のボキャブラリーで、コンピュータに何をすべきかを指示することによって、何らかの最終結果を達成することを意味します。独自の関数を作成することで、言語の機能と語彙を拡張できます。
便利な関数を集めたものをライブラリと呼びます。 Python には標準ライブラリが付属しています。これは、モジュールにグループ化された関数の非常に大規模なコレクションです。これは、オペレーティング システムとの対話、 CSV ファイルの 読み取りと書き込み、 ZIP 圧縮と解凍 、 暗号化 、日付と時刻の操作などのタスクのためのモジュールを提供します。
関数を使用するには、適切なモジュールをインポートする必要があります。
OSをインポートする
print(“現在のディレクトリ:”, os.getcwd())
オペレーティング システムとインターレースするには、
os
モジュールをインポートします。現在の作業ディレクトリを確認するには、
os
モジュールに含まれる
getcwd()
関数を使用します。
これら 2 行を「cwd.py」というテキスト ファイルに保存すると、Linux
python3
インタープリターを呼び出し、コマンド ラインでプログラム名を渡すことによって、ファイルを実行できます。
Python3 cwd.py
Python で利用できる他にも何千ものライブラリがあります。一部は商用利用可能ですが、圧倒的に大部分は無料でオープンソースです。
プログラミング言語とスクリプト言語
Linux でシェル スクリプトを作成する場合、スクリプトの最初の行 (
シバン行
と呼ばれます) は、そのスクリプトの実行にどのコマンド インタプリタを使用するかを示します。通常、これは
bash
になります。
#!/bin/bash
次のシバン行を Python プログラムに追加して実行可能にすると、シェルはスクリプトを Python インタープリターに渡します。
#!/usr/bin/env python3
つまり、
bash
コマンドと同じように Python でスクリプトを作成できます。前の例にシバン行を追加すると、次のようになります。
#!/usr/bin/env python3
OSをインポートする
print(“現在のディレクトリ:”, os.getcwd())
これを「cwd-2.py」として保存し、
chmod
を使用して実行可能にしてみましょう。
chmod +x cwd-2.py
ここで、スクリプトを実行するために、名前で直接呼び出すことができます。
./cwd-2.py
実際、Python は他のアプリケーションで使用するスクリプト言語として使用でき、Python を埋め込んで他の言語で書かれたプログラムに内部機能を追加するために使用できます。
Python は今の時代
コンピューター サイエンスとデータ エンジニアリングの世界では、ビッグ データ、クラウド コンピューティング、機械学習ほど熱いトレンドはありません。そして Python はまさにこうした動きの中心にあります。これらの各分野において、Python が最良の開発ツールの 1 つとしての地位を確立するためのライブラリが存在します。おそらく、いくつかの中でナンバーワンの座を占めています。
さらに良いことに、これらのオープンソース ライブラリはすべて、自宅で改造を行う人が利用できます。顔認識を行うために RaspberryPi をトレーニングしてみませんか?適切なライブラリ — OpenCV 、 face_recognition 、 imutils などをダウンロードしてください。
解釈されるが、限定されない
Python は解釈される可能性がありますが、迅速に実行され、適切に拡張されます。 Google、Facebook、Instagram、Netflix、Dropbox などの業界リーダーによって使用されています。
Django などの Web フレームワークと組み合わせて、YouTube、Instagram、Spotify、Dropbox など、世界で最もアクセス数が多くトラフィックの多い Web サイトの作成に使用されています。
W3Schools のチュートリアル など、Python の学習に役立つオンライン リソースが多数あります。 Python の興味深い機能のいくつかを簡単に説明することで、それらをチェックしてみたいという意欲が湧いてくることを願っています。





