登録日:2022/02/19 Sat 13:15:32
更新日:2024/06/18 Tue 09:57:54NEW!
所要時間:約 3 分で読めます
▽タグ一覧
python パイソン プログラミング言語 言語 プログラミング ai 人工知能 ナウい 使いやすい コンピューター ハードウェア ソフトウェア 数学 統計学 計算 科学 サイエンス 技術 研究 開発 アニヲタit教室 読みやすい
Python(パイソン)は、今最もアツいプログラミング言語の一つである。
概要
オランダ人のプログラマー、グイド・ヴァンロッサム氏が1991年(平成3年)に開発した言語。
彼はオランダの名門アムステルダム大学(立ち位置としては日本の東大に相当)で数学と計算機科学を学び、修士号を取得。その後、数々の研究機関で働きながら趣味でPythonの開発を始め、1991年にリリースした。
ちなみにPythonの名前は彼が好きなイギリスのバラエティ番組「空飛ぶモンティ・パイソン」が由来である。そしてPythonのシンボルマークは2匹のニシキヘビ(それぞれ青色と黄色)である。これはPythonがニシキヘビを意味する学術名でもあるため。ちなみにソフトウェアリポジトリ「PyPI」の俗称も海外の一部では「チーズショップ」というスケッチタイトルのネタが使われている。
言語のカテゴリとしては高水準(高級)言語と呼ばれるグループに分類される。これは低水準言語(機械語やアセンブラ言語など)と異なり、特定のハードウェアへ依存せず、どんなハードウェアでも使用でき、さらに人間の思考に近いため使いやすいという特徴を持つ。
(ただしコンピュータの目線から見ると機械語やアセンブラ言語の命令のほうが理解しやすい。簡単に言うと、高水準言語は人間寄りの言語、低水準言語はコンピュータ寄りの言語である。そのため、プログラミングを行う際はまず高水準言語でソースコードを書いてから、それを低水準言語に翻訳するというのが基本である。)
Pythonは同じ高水準言語であるC言語やJavaなどに比べ、文法が単純で読みやすい上に記述量も少ないのが特長である。
さらに実用性も兼ね備えており、必要な機能をすぐに提供できることから、近年人気が急上昇している、非常にナウい言語である。また、初心者が初めてプログラミングを勉強する場合にもオススメの言語と言われることも多い。実際、(Python自体は教育用の目的で開発されたわけではないものの)プログラミング教育用の教材としてPythonが用いられることも多い。
また、記述法に厳しい制約を加えられている関係で、誰が書いても同じような簡潔なプログラムになりやすい。
誰が書いても同じようになるということはすなわち読み解く手間が少なくなるということであり、理解難易度を下げることに貢献している。
Pythonマニアの間では出来るだけコードを必要最低限に短く簡潔にまとめることが美しいと言われている。
ちなみにPythonでは、一つの動作を行う方法は原則1通りしかないように作られている。これは一つの動作を行う方法が複数存在するPerlとは対照的である。
Pythonの前身はABC言語であり、これに例外処理やオブジェクト指向の要素を追加したものがPythonである。ちなみにPython生みの親であるヴァンロッサム氏もABC言語の開発に数年間かかわっていた。
主な用途
汎用性が高い言語であるため、組み込みシステムやWEBアプリケーションなど幅広い用途に使えるが、特に数学、統計学、データサイエンス(データ科学)の分野で注目されている。
数値計算や数式処理、データ解析、データの可視化、CADなどに対応した高度なアルゴリズムやツールを有しているのが特長である。
さらに今話題のディープラーニング(深層学習)やAI(人工知能)の分野では、使われる言語はほぼPython一択であると言っても過言ではない。
また、Pythonは柔軟なアーキテクチャを持つため、FortranやC言語で開発された高速な処理を、Pythonに取り入れて利用するという使い方もある。このおかげでプログラミングを専門としていない研究者でも高速な科学技術計算を簡単に利用することができるのである。
(一応念のため書いておくと、Pythonそのものは高速な科学技術計算が得意な言語ではない。FortranやC言語の強みをPythonに取り入れて利用するという感じである。)
全世界で使用されている言語で、MicrosoftやApple、Google、YouTube、Yahoo!、Facebookなどの大企業や、NASAなどの研究機関でも当たり前のように使われている。
高水準言語の例に漏れず、多数のプラットフォームに対応しているのもメリットで、特にLinux環境なら最初からインストールされていることがほとんどである。近年は教育目的でプログラム電卓(関数電卓)でも動作できるようになっている。
Pythonには様々な実装が存在する。最もメジャーなのはC言語で書かれたCPython(シーパイソン)である。他にもJava仮想マシンに移植したJython(ジャイソン)や、Pythonで書かれたPyPy(パイパイ)などが存在する。
その他
2020年度(令和2年度)から、日本の国家資格である基本情報技術者試験の選択問題のプログラミングでPythonが追加されている。代わりにCOBOLが廃止されてしまったが。
#highlight(){
Hello everyone = () =>
itsumo mitekurete = arigato("hakushu"); kondo project_tsuiki&shusei = (yoroshiku: ne) from aniwotawiki();
}
[#include(name=テンプレ2)]
この項目が面白かったなら……\ポチッと/
#vote3(time=600,6)
[#include(name=テンプレ3)]
▷ コメント欄
- あんまりにも便利すぎて、使ってるとダメになりそうな気がするやつ -- 名無しさん (2022-02-19 18:08:06)
- R「AIでPython一択は過言だろ」 -- 名無しさん (2022-02-19 19:01:03)
- ぴ、ぴちょん……。 -- 名無しさん (2022-02-19 21:30:54)
- Julia「誠に遺憾である」 -- 名無しさん (2022-02-19 23:24:58)
- オランダの東大で知られてるのか・・・? -- 名無しさん (2022-02-21 12:26:25)
- アムステルダム大学はオランダのトップ校だけど、「オランダの東大」って言い方は聞いた事ないぞ -- 名無しさん (2022-02-21 17:15:04)
- 「オランダの東大として知られる」って言い方の違和感が凄かったので記述を変えてみた -- 名無しさん (2022-02-21 17:17:38)
- たまにはRのことも思い出してあげてください -- 名無しさん (2022-04-02 01:00:04)
- せめて使用例の一つぐらい欲しかった -- 名無しさん (2023-02-13 17:59:34)
- ↑折角なので使用例を書いてみようと思うのですがどういうのが求められてるのでしょうか…? -- 名無しさん (2023-05-08 16:20:52)
- 基本癖のない言語だと思うんだけど、他言語のノリでフィールド書くとクラス変数扱いになるってのは個人的にクソ仕様。クラス変数なんて特殊なもんが一番簡単にかけるのはアカンやろと思う。 -- 名無しさん (2023-08-29 18:26:40)
#comment
コメント
最新を表示する
NG表示方式
NGID一覧