こんにちは、みやびのです。
プログラミングは13年ほどやっております。
今回は、Pythonの基礎の基礎を理解するために必要な3つの要素について説明します。
Pythonの基礎力を築くために必要な要素は変数・関数・制御文の3つです。
上記3つをマスターするだけでもかなり柔軟なプログラムが書けるようになります。
Pythonの基礎にはクラスやオブジェクトなど様々な要素がありますが、一度に理解しようと思うと難しいです。
まずは簡単なところから理解していきましょう。
Pythonを始めるなら変数・関数・制御文の3つを理解しよう
変数・関数・クラス・オブジェクト・制御文・ライブラリ・・・・などなど全てを一度にやろうと思うとボリュームが大きすぎるので挫折の原因となります。
まずはプログラミングの基本中の基本である変数・関数・制御文の3つについて理解しましょう。
基礎的な話は参考書やドキュメントを読めば十分だと思うので本記事ではあまり詳細な話はしません。
変数の役割とは?
変数とは値や計算式を一時的に保存できる箱のようなものです。変数に値を設定した後は文字列や整数にようにプログラムの処理や計算に使うことができます。
変数は可読性の向上や修正範囲の削減に活用可能です。
長い計算式を何か所も書いてあると非常に読みにくいコードとなります。また、修正にも時間がかかる上に修正漏れが起こる可能性も高いです。
変数に値や計算式を格納しておくことで可読性は上がりますし、修正も少なくなります。
関連記事>>Python初心者が理解しておくべき変数の3つの役割
関数の役割とは?
関数は「ある目的のための一連の処理を保存したもの」です。変数と異なり引数というパラメータを設定することができ、パラメータの設定内容によって結果が変わります。
また、関数が処理した結果をリターン値として返却することが可能です。
関数を定義するメリットは「冗長な処理の排除できること」と「処理の中身を知らなくても呼び出すことはできること」です。
プログラミングは同じような処理が何度も登場します。短いコードなら何度か書いてもいいかもしれませんが、長ったらしい処理を何度も書いていると読みにくくなりますし、ミスも多くなります。
よく使う処理を関数として定義しておけばコードはすっきりしますし、修正も1度で済みます。
また、関数は中身がわからなくても使うことが可能です。
Pythonの標準関数を使う場合はもちろんですが、他人が書いた関数を呼び出す場合も入出力さえ理解しておけば呼び出すことができます。
「細かい処理はわからないけどどんな結果が得られるかはわかっているプログラム」については関数化して入出力だけを覚えておくことで初心者でも高度なプログラムを作ることができます。
関連記事>>Python初心者が理解しておくべき関数の3つの役割
制御文の役割とは?
制御文とは条件分岐や繰り返し処理を実現する構文です。
通常プログラムは上から下に順に実行していきますが、制御文を使うことで特定の処理を飛ばしたり同じ処理を何度も繰り返したりといったことができます。
制御文を用いないとプログラムは1パターンしか処理ができません。パラメータで多少結果は変わりますが、作れる処理はかなり少なくなります。
また、同じような処理を何度も書かなければならないので非常に縦に長いコードとなります。同じ処理を何度も書くと読みにくいですし、数を間違える可能性も大です。
制御文を用いれパラメータによって処理を切り分けることができるので、飛躍的に処理できるパターンが増えます。
不要な処理は飛ばすことができるので実行速度の短縮も可能です。
連続で同じ処理をする場合も構文を書くだけで済むのでコードはかなり短くなります。
関連記事>>Python初心者が覚えるべき制御文の役割(準備中)
【Python】変数・関数・制御文の勉強方法
当ブログでは何度も書いていますが、プログラミングスキルを上げたいならとにかくたくさんのコードを書いて動かすことが大事です。
動かさなければ上達はありません。
無論簡単なコードばかり書いていても上達はないので難しいと感じるコードにも挑戦していきましょう。
基本的な使い方を覚える
まずは基本的な使い方を覚えましょう。ざっくりとでよいです。
変数と言えど学ぼうと思うとかなり奥が深いのであまり深追いする必要はありません。
基本的な使い方「代入方法」や「参照方法」を覚えればOKです。
関数や制御文も同様でざっくりと使い方を覚えましょう。
「ネットを見ると最初から基礎をしっかり学ばないとダメだ」
とか言う方を見かけるのですが、そんな完璧主義になる必要はないです。
プログラミングはハサミやシャーペンと同じ道具です。使えれば必ずしも深く学ぶ必要はありません。
もちろんより高度なプログラミングを目指すためには深く学ぶのが大事です。ちょっとした設計の違いが大きな性能の差を生みます。
が、それは中級者・上級者になったら考えればいい話。
初心者のうちは「プログラミングの基本的なルールを覚える」ことを目指しましょう。
変数・関数・制御文を学ぶなら参考書かProgateがおすすめです。
◆おすすめ参考書
Pythonの基礎を体系的に学べる一冊です。基礎がわかりやすくまっているので初心者でもかなり取り組みやすいのが特徴。
ひとまず変数・関数・制御文のページを読んで実践すればOKです。
実際に実行する
やはり実際に実行して動かすのが一番の近道です。
Pythonの実行方法は「コンソールで実行する方法」と「ファイルに記述して実行する方法」の2つ。
ターミナルソフトを開いて「python」と入力することPythonが実行できるコンソールを開くことができます。
このコンソールではpythonのコードを1行ずつ入力して実行することができます。
Pythonはインデントがあるので関数や制御文はやや書きづらいですが、簡単な構文を試したい場合はコンソールで十分です。
中規模以上の構文を試したい場合はやはりファイルに記述して書きましょう。とはいえ拡張子「.py」のファイルを作成してコードを書きこむだけなので難しくありません。
メモ帳を使うとあまり効率がよくないので必ず専用のエディタを使いましょう。
Pythonの場合おすすめはPyCharmです。
PyCharm無料版のダウンロード方法と基本的な使い方
プログラムは失敗に価値がある
プログラミングスキルの成長において大事なことの1つが「どれだけの数のエラーや問題を解決してきたか」です。
プログラミングをやる以上どうしても、エラーに突き当たります。エラーは出ないまでもなかなか思い通りに動かせないことも少なくありません。
なのでエラーや課題を解決する力は必ず必要となります。
とは言えプログラミングはありがたいことにメッセージという形で「何が悪いか」を教えてくれます。
あまり参考にならないメッセージが出てしまう場合も少なくありませんが、他の分野よりもはるかに勉強しやすいです。
例えば文章であればスペルチェックはできても「文章の整合性があるか」とか「表現が正しいか」とかは人の目でチェックするしかありません。
文字通り機械的にチェックできるプログラミングはかなり学びやすい分野です。
終わりに
ネットを見ていると「プログラミングを勉強するなら基礎からやれ」という意見をよく見かけます。
が、具体的に基礎のどこまでをやればいいか語ってくれる人は多くありません。
Pythonの基礎といってもかなり広いです。なので1から10まで学ぼうとしたら挫折の原因となります。
まずは変数・関数・制御文の3つに絞って勉強すればOKです。
上記3つの扱いに慣れたらクラスやオブジェクトなど一段上の勉強を目指しましょう。
◆おすすめ参考書
Pythonの基礎を体系的に学べる一冊です。基礎がわかりやすくまっているので初心者でもかなり取り組みやすいのが特徴。
◆無料から始められる学習サイト
Progate
Pythonの勉強法>>Python入門者のための100日勉強方法