Pythonとは?プログラミング初心者は学ぶべき?をわかりやすく解説します!

ウサギ
ウサギ

Pythonって、どんなプログラミング言語なの?

勉強したほうがよいプログラミング言語?

イヌ
イヌ

Pythonだね!

できるだけ、わかりやすく解説するね〜

ウサギ
ウサギ

お願いします〜

本記事の内容

・Pythonについて
・プログラミング初心者はPythonを学ぶべきか
・初心者におすすめのプログラミング言語

本記事の信頼性

イヌ
イヌ

・小規模の開発会社、上場企業2社でエンジニアを経験

・正社員、フリーランス合わせて10年以上エンジニアとして活動

・現在、フリーランスエンジニアとして時給5桁で活動中

この記事を書いているイヌは10年前、独学でプログラミングを始めました。

プログラミング学習を始めようとすると、いろいろなプログラミング言語があって、どの言語から始めたらよいか、わからないですよね。

今回は「Python」というプログラミング言語について、初学者に向けてわかりやすく解説します!

気楽に読み進めてもらえればうれしいです!

Pythonについて

Pythonは、1991年に発表されたプログラミング言語です。

「読みやすさ」「わかりやすさ」を重視して作られているプログラミング言語です。

Pythonは、Webアプリケーション開発はもちろんのこと、数学や統計のライブラリが充実しています。

そのため、Web開発以外にも、機械学習やデータ分析、AI関連の開発・ライブラリ利用などに用いられることが多く、世界中で利用されています。

またPythonは、動的型付け言語の1つです。C言語やJava※1などとは異なり、書いたプログラミングをそのまま実行することができます。

※1 C言語やJavaは静的型付け言語です。書いたプログラミングを実行するために、コンピュータが理解できるようにするための「コンパイル」という作業をはさむ必要があります。

プログラミング言語の種類について

プログラミング言語は、いろいろな切り口から、さまざま種類があります。

  • 静的型付け言語、動的型付け言語
  • コンパイラ言語、スクリプト言語
  • 手続き型言語、オブジェクト指向言語、関数型言語

などです。

プログラミング初心者の方は、自然に身についてくる部分なのですが、新たな言語を学ぶときに、どこに属する言語であるかと理解していると、学習の目安になったりもします。

例えば、

  • C言語は、静的型付け言語、コンパイラ言語
  • Pythonは、動的型付け言語、スクリプト言語

に属していることが理解できているなら、

「C言語は静的型付け言語だから、型の概念がわからないと大変だよ」

とか、

「Pythonはスクリプト言語だから、割と手軽に書き始められるね」

など、プログラミング言語の特徴が、わかりやすくなります。


Pythonプログラミングの哲学を「The Zen of Python」というタイトルで、Python開発者の1人 Tim Peters(ティム・ピーターズ)氏によって、実装されています。

Pythonのコンソールで以下のように実行すると、表示されます。

>>> import this The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren't special enough to break the rules. Although practicality beats purity. Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity, refuse the temptation to guess. There should be one-- and preferably only one --obvious way to do it. Although that way may not be obvious at first unless you're Dutch. Now is better than never. Although never is often better than *right* now. If the implementation is hard to explain, it's a bad idea. If the implementation is easy to explain, it may be a good idea. Namespaces are one honking great idea -- let's do more of those!
Code language: Bash (bash)

英語ですが、Pythonの思想を感じ取れる内容です。

興味のある方は翻訳してみてくださいね。


余談:Pythonの作者であるGuido van Rossum(グイド・ヴァンロッサム)氏ですが、2019年に職業プログラマを引退したと表明していましたが、2020年11月13日のツイートで、Microsoftへ入社し、復帰すると、話題になりました。

プログラミング初心者はPythonを学ぶべきか

Pythonは、プログラミング初心者の最初の一歩としておすすめできる言語です。

例えば、Pythonはインデント(字下げ)でブロックをつくるルールがあります。

そのため、誰か書いても、同じようなコードになるので、非常にコードがわかりやすいです。

JavaScriptだと、以下の(1)〜(4)まですべて動作し、複数の選択肢があります。

※ 今回のケースだと、一般的には(3)が良いとされる書き方です。

// (1) if (true) { console.log('hi'); } // (2) if (true) console.log('hi'); // (3) if (true) { console.log('hi'); } // (4) if (true) console.log('hi');
Code language: JavaScript (javascript)

Pythonだと、以下の1通りです。

if True: print('hi')
Code language: PHP (php)

上のコードからも分かるように、カッコやセミコロンなどもないため、コード自体もスッキリ書くことができます。


一つ注意してほしいのは、Pythonの日本語での情報量についてです。

何度がお伝えしていますが、Pythonは世界的に人気のあるプログラミング言語です。

一方、日本では、スクリプト言語としてRubyが人気です。日本語の情報量も、PythonよりRubyが多いです。Rubyが日本生まれのプログラミング言語のため、相対的に日本では人気になっています。(ちなみにイヌもPythonよりRubyのほうが得意です)

もしあなたが英語がネイティブなみで、英語で新たなことを学ぶのにハードルがないのであれば、Pythonを選択してもよいかもしれません。

英語が苦手なのであれば、Rubyのほうがググったときの日本語での情報量が多いので、特に独学で学習する場合は、この点も考えたほうが良いと思います。

※ もし近くにPythonの得意な人がいて、気軽に質問できるような環境なのであれば、その限りではないので、あしからず。

初心者におすすめのプログラミング言語

ここまでPythonやRubyをおすすめしてきました。

これらのプログラミング言語のはじめの一歩は、俗に言う「黒い画面」で、プログラミングを始めることになります。

こんな画面です。

Pythonでプログラミングをはじめることもよいですが、おすすめはJavaScriptです。

パソコンとブラウザがあれば、プログラミングを体験できるので、手軽さでは圧倒的にナンバーワンです。

こんな感じでブラウザだけで、プログラミングを動かすことができます。


ただ、JavaScriptもRubyもPythonも、プログラミング言語の基本は変わりません。

変数があり、関数があり、繰り返しがあり、条件分岐があります。

エンジニアは、はじめに深く学んだプログラミング言語が、考え方のベースになる傾向があると、イヌは思っています。

これは自然言語である日本語でも同じです。あとから英語を学んだとしても、重要な決断や考えることは日本語で考えることが多いでしょう。

できるだけ学びやすいプログラミング言語を選び、学んでいきましょう!


いろいろなプログラミング言語を以下の記事で紹介しています。

あわせてご覧いただけるとうれしいです。

イヌ
イヌ

Pythonについてでした〜

興味があるかたは初めてみてもよいかも〜

ウサギ
ウサギ

コードが1通りなのはわかりやすそうだね〜

ありがとう!よくわかったよ!

またね〜

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です