Pythonは、データ分析やWebアプリ制作、機械学習など、さまざまな使い方ができるプログラミング言語です。プログラミングに興味がある方のなかには、下記のような疑問がある方も多いのではないでしょうか。
- Pythonを学べば何ができる?
- Pythonの基礎って何を学べばいい?
今回は、下記の2段階に分けてPythonの入門~基礎内容まで紹介します。
- Python初心者を目指すための入門項目
- Python初心者が押さえるべき基礎項目
まずPython初心者でも簡単に作れる制作物を紹介してから、それぞれの制作物を完成させるために必要な知識を解説します。それぞれサンプルコードがあるので、解説を見ながら一緒に手を動かしてみてくださいね。
プログラミングやPythonに興味がある方は、ぜひ最後までご覧ください。
- Pythonがおすすめな理由
- Python初心者が作れるようになるもの
- Pythonでオリジナルゲームを作るために必要な入門~基礎知識
- Pythonで機械学習をするために必要な入門~基礎知識
- 無料の学習サイトの魅力
Pythonはプログラミング初心者におすすめ!
数多くあるプログラミング言語のなかでも、Pythonはプログラミング初心者にもっともおすすめです!おすすめな理由は下記のとおりです。
- 学習方法がたくさんある
- エラーの見つけ方が簡単
- プログラムの書き方が難しくない
- フレームワークや関数が豊富で実装する内容が少ない
Pythonでは「関数」と呼ばれる、複数の実装内容をパッケージ化したものがたくさんあります。そのため、C言語では5行以上書かなければならない内容でも、Pythonでは1行程度で書ける場合も多くあります。
また、参考書や無料の学習サイト、Pythonスクールなど、さまざまな学習方法から選べて、学びやすい環境があるのもおすすめする理由です。
Pythonはプログラミングの難易度が低く、多様な学習方法から選べるため、プログラミングをしたことがない人におすすめといえます。
Pythonについて詳しく知りたい方は、下記をチェックしてみてくださいね!
Python初心者レベルで作れるもの
Python初心者レベルで作れるようになるものは、下記のとおりです。
- 簡単なゲーム
- 機械学習モデルの実装
- Webスクレイピング
Pythonを習得するうえでは、まずは作りたいものなど最終目標を決めるとスムーズに学習が進みます。そのため、プログラミング練習を始める前に、まずは何を作りたいかを決めましょう!
これから、上記の「Python初心者レベルで作れるもの」を例を挙げながら紹介します。目標を決めるためにも、それぞれ順番にチェックしていきましょう。
簡単なゲーム
本格的なゲーム制作にはC#が一般的に使われますが、Pythonだけでも簡単なゲームを作ることが可能です。例えば、下記のように基本的なPython文法でゲームを作れます。
- 変数やランダム関数を使った「じゃんけんゲーム」
- 繰り返し文を使った「スロットゲーム」
- 条件文を使った「マルバツゲーム」
ゲーム作りは作った後の達成感だけではなく、友だちから遊んだ感想をもらえて、学習のモチベーションにつながる良さがあります。遊び感覚でPythonを学びたいなら、簡単なゲームを目標にすると良いでしょう。
- ゲームが好き
- 自分でアプリを作ってみたい人
機械学習モデルの実装
Pythonをある程度習得できれば、機械学習モデルの実装も可能です。例えば、重回帰モデルや決定木など、一般的に使われる手法を1から自分で実装できるようになります。
Pythonでは数式処理に特化した関数が多くあったり、素早い数式処理ができるフレームワークが使えたりと、機械学習向けの環境が整えられています。
機械学習と言えば、Pythonと言われるほどです。Pythonの数式処理や繰り返し文、printなどの入門・基本事項を押さえて、機械学習モデルの実装を目指しましょう!
- データ分析をしたい人
- 数学が好きな人
- データサイエンティストとして就職・転職をしたい人
Webスクレイピング
Python初心者レベルでは、Webスクレイピングもできるようになります。
Webスクレイピングとは、ホームページから情報を自動的に抽出することです。Webスクレイピングの抽出結果は、自然言語処理用のデータとして役立ちます。
Webスクレイピングをするためには、Webスクタイピング用のフレームワークを使いこなせるようになる必要があります。
- Pythonで自然言語処理をしたい人
- ホームページやSNSなどWeb上の情報を使って、データ解析をしたい人
Python初心者を目指すための入門項目6つ
入門項目にかける時間目安:10〜20時間
まず、プログラミングの基礎中の基礎を入門編として紹介します。
- Pythonコードの実行環境をつくる|Google Colaboratory
- モジュールを使えるようにする|import
- コメントを残す|#
- 文字を表示する|print
- 四則演算
- 変数
特にプログラミングが初めての方は、順番にチェックしていきましょう!
- Pythonを使ったプログラムの作成〜コンパイル
- フレームワーク・モジュールのインポート
- コメント・非表示モード
- 実装内容の表示
- 計算
Pythonコードの実行環境をつくる|Google Colaboratory
プログラミングを行う前に、実行できる環境をパソコン上に作る必要があります。実行環境には、下記の4つが必要です。
- プログラムを書く「エディタ」
- プログラムをコンピュータ内部で実行する「コンパイラ」
- プログラムのエラーを出す「デバッガ」
- 表やグラフを表示する「可視化ツール」
ただし、インタプリタ言語のPythonではコンパイラを必要としないため、エディタ・デバッガ・可視化ツールの3つの環境を用意しましょう。
上記は単体のツールをダウンロードすることで用意できますが、「統合開発環境」と呼ばれるツールをダウンロードすれば1つのツールで完結します。
簡単に統合開発環境を用意するなら、「Google Colaboratory」がおすすめです。
Google Colaboratoryでは、実行環境がひと通りオンライン上でツール化されています。Googleのアカウントがあれば、すぐにPythonを試せるので、実行環境に手間取りたくない方は早速Google Colaboratoryに登録しましょう。
登録後の手順を紹介するので、見ながら試してみてくださいね!
- ノートブック(エディタ)の作成方法
- コードの実行方法
まず、ノートブックを作る必要があります。ノートブックとは、エディタのようなものと認識しておくと良いです。
ノートブックを作成すると、下記のように右向き黒い矢印と灰色のブロックが表示されるので、ブロックにコードを入力してみましょう。
関数を使って、長いコードを書くときには「+テキスト」をクリックして、表示されるエディタを使うと便利です。
少しだけコードをチェックしたい場合には、灰色のブロックが表示される「+コード」を使うと良いでしょう。
コードを実行するときには、右向き黒い矢印をクリックしてください。
実行中にエラーが発生しなければ、上記のように緑色のチェックマークが表示されます。
基本以外の使い方は、チュートリアルをチェックしましょう。
なお、自分のパソコン上にPythonの環境を構築したい人は、下記を参考にしてくださいね!
モジュールを使えるようにする|import
Pythonでは、よく使われる関数がモジュール化されています。例えば、Excelにある「SUMやCOUNT」などの数式系の関数のように、Pythonでも「sumやsin」などの数式関数があります。
Pythonで各関数を使いたいときには、関数が一つのパッケージになったモジュールやフレームワークをプログラムの初めにインポートしなければ使えません。数式関数を使う場合には、下記のように「math」をインポートします。
import math
なお、Pythonで用意されている標準モジュールはこちらから確認してください。よく使われるフレームワークは、下記の記事をチェックしてくださいね!
コメントを残す|#
プログラムの内容について、日本語や英語でコメントができます。コメントの方法は「シャープ」と「シングルクォーテーション」の2種類です。
- #:1行をコメント化できる
- ‘:囲まれた範囲内であればすべてコメント化できる
具体的なコメント方法は、下記のとおりです。
# mathをインポート
import math
'''
mathをインポート
合計を計算
'''
コメントで実装した内容や出力内容を記載しておくと、時間が経ってからプログラムを見直すときに、該当する行や関数が何をしているプログラムなのかがひと目でわかります。
特にチームで開発をするうえでは、わかりやすいコメントを記載できるかが大切です。ほかの人のプログラムを見て、コメントの方法を学んでいくと良いでしょう。
インデント
Pythonでは、「インデント」と呼ばれるブロック単位の記述方法が採用されています。インデントを挿入するときは、空白文字を半角スペースで入力します。インデントの例は下記のとおりです。
num = 1
if num == 1:
print('値は1です')
else:
print('値は1以外です')
上記例のprintのようにif文内で実行したいことは、半角の空白文字を4つ入れてインデントを下げなければ、エラーが発生します。Pythonのインデントは細かくルールが決められているので、詳しくは公式のコーディング規約を確認してみてくださいね。
なお、統合開発環境では空白文字の数を「…」などで教えてくれるものもあるので、慣れないうちは活用することをおすすめします。
文字を表示する|print
プログラムは出力をしなければ、プログラムが実行されるだけで何もアウトプットされません。CSVやグラフなどさまざまな方法でアウトプットできますが、もっとも基本的な方法は「print」で画面上に表示する方法です。
print('Tech Teacher')
計算結果などの実行内容を表示したい場合には、printを使うとスムーズです。
なお、Pythonのprintでは、さまざまな方法で表示ができます。詳しくは下記を参考にしてください。
四則演算
Pythonでは電卓のように、四則演算ができます。実装の仕方は下記のとおりです。
#足し算
10+10
#引き算
10-10
#掛け算
10*10
#割り算
10/10
繰り返し足し算をするときや上限値まで特定の動作をしたいときなど、さまざまなプログラムへ応用できます。数値の型やほかの演算方法については、下記で詳しく解説しています。
変数
プログラミングでは、値や文字をプログラム上に保持してもらう先を「変数」と表現します。変数の書き方は下記のとおりです。
num = 10
# 文字列を格納するときには「''」で囲む
str = 'teacher'
変数では、数値や文字、文字列などあらゆるものを保持できます。
変数を使わずに直接値を書いても実行できますが、値が変わるごとに変えなければいけなくなるため面倒です。そのため基本的に値など変わる可能性があるものは、変数として定義します。
# NG
10 + 20 = ans
# OK
num1 = 10
num2 = 20
num1 + num2 = ans
また、変数の名前の付け方にはルールがあります。慣れ始めると、変数のルールを覚え直すのが大変になるので、下記を参考に少しずつ覚えていきましょう。
Python初心者が押さえるべき基礎項目3つ
基礎項目にかける時間目安:20〜30時間
続いて、Pythonで頻出の基礎項目について下記の3項目を解説します。
- 条件文・真偽値|if・True/False
- 繰り返し文|for
- 関数化|def
基礎項目を習得できれば、Pythonでできる幅がかなり広がります。順番にチェックしていきましょう。
- 基本的な条件分岐の実装
- プログラムを繰り返し実行する実装
- 関数化で見やすいコード記述
条件文|if
Pythonでは、「ある条件のときは○○をして、条件以外のときは○○をする」といったように条件分岐を指示できます。Pythonの条件分岐は「if・else」が基本的な指示方法で、「もし〜・それ以外」と解釈できるので覚えやすいでしょう。
条件文の基本的な書き方は、下記のとおりです。
num = 1
if num == 1:
print('値は1です')
else:
print('値は1以外です')
実装して、上記の結果を確認してみましょう!
条件文は、「条件に当てはまる場合にはエラー文を表示し、それ以外の場合には次のプログラムを実行」といったように、エラーを解析するときに便利です。
複数の条件文の書き方については、下記をチェックしてみてくださいね!
繰り返し文|for
Pythonでは、同じ行為を繰り返すときに繰り返し文で指示できます。繰り返し文の型は下記のとおりです。
for 変数 in 繰り返す回数:
繰り返す内容
では、繰り返し文の書き方について、「10回1を表示する」プログラムを参考に確認してみましょう。
for i in range(10):
print(1)
range(10)は、「0~9」の合計10個の整数を作るプログラムです。変数の「i」には数値が渡されて、渡された回数分printを繰り返します。
下記のように、1が10回表示されるかどうか確認してみましょう。
繰り返し文は、機械学習でモデルの学習をするときに使われます。モデルが最適化されるまで学習を繰り返す必要があるからです。
for文の様々な使い方やrangeの中身、for以外の繰り返し文の記載方法は、下記を参考にしてくださいね。
関数化|def
Pythonでは、「関数」でまとめて書く方法が推奨されています。これまでに入門と基礎項目で紹介してきたプログラムは、関数が使われていません。
# 「べた書き」と呼ばれる書き方
num = 1
if num == 1:
print('値は1です')
else:
print('値は1以外です')
本格的なゲームを作ったり、機械学習モデルを実装したりする場合には、コードが複雑になります。関数化しておくことで、使いたい値だけをすぐ取り出せたり、関数内の数値だけ変えるなど変更がしやすくなったりと、スムーズにプログラミングができます。
関数の基本的な書き方は、下記のとおりです。
def 関数名(引数):
関数内でする内容
return 戻り値
例えば、足し算と引き算を計算するコードがある場合には、足し算関数と引き算関数に分けて記述します。それぞれの関数内では、「戻り値」として計算結果を渡すことになります。
関数の「return」で渡される「戻り値」をプログラム上で呼び出すときには、下記のように記載します。
戻り値を格納する変数 = 関数(引数)
「引数」とは関数に渡す値のことで、戻り値とは関数が使われたときに出力する値です。引数を設定しておくことで、プロンプト上やmain関数で値を変えられるので、試行錯誤がしやすくなります。
def sum_sample(num1, num2):
ans = num1 + num2
return ans
test = sum_sample(10, 20)
print(test)
上記を実行して、下記のように関数内の計算結果が表示されるかどうか確認してみてくださいね。
引数の型・渡す数、戻り値を格納する変数の数の3つを合わせるように注意してくださいね。なお、関数の使い方は下記で詳しく解説しています。
Python初心者には無料学習サイトがおすすめ!
Pythonをこれから学び始める初心者の方には、無料学習サイトがおすすめです!無料学習サイトがおすすめな理由は下記のとおりです。
- お金がかからないので気軽に始められる
- 授業時間など時間制限がないので気になることはとことん学べる
- 早朝でも夜でも自分が勉強したいタイミングで学べる
無料学習サイトの最大の魅力は、学び放題にもかかわらず、お金が一切かからないことです!初めてPythonを学ぶ場合には、そもそもPythonが自分に合っているかどうか不安な方も多いでしょう。
無料学習サイトでは、受講料金や参考書代などの費用がかからないので、本格的に身につけようとしていない興味がある段階でも、気軽に学べます。
また、コンテンツの充実さは有料サイトやスクールに引けを取りません。例えば、弊社が運営する「Tech Teacher Blog」では、Pythonの概要〜基礎実装までコード・図説付きの解説と各章の練習問題があります。
インプットとアウトプット両方を自分が納得いくまで、無料でできるのです。練習問題を自力で解けたときには、大きな達成感を得られるでしょう。
お金をかけて勉強する方法はたくさんありますが、まずは無料の学習サイトで、「Pythonができるか」「楽しいと思えるか」を試してみることをおすすめします!
『Tech Teacher』3つの魅力
魅力1. オーダーメイドのカリキュラム
『Tech Teacher』では、決められたカリキュラムがなくオーダーメイドでカリキュラムを組んでいます。「質問だけしたい」「相談相手が欲しい」等のご要望も実現できます。
魅力2. 担当教師によるマンツーマン指導
Tech Teacherでは、完全マンツーマン指導で目標達成までサポートします。
東京大学を始めとする難関大学の理系学生・院生・博士の教師がが1対1で、丁寧に指導しています。
そのため、理解できない箇所は何度も分かるまで説明を受けることができます。
魅力3. 3,960円/30分で必要な分だけ受講
Tech Teacherでは、授業を受けた分だけ後払いの「従量課金制」を採用しているので、必要な分だけ授業を受講することができます。また、初期費用は入会金22,000円のみです。一般的なプログラミングスクールとは異なり、多額な初期費用がかからないため、気軽に学習を始めることができます。
まとめ
・魅力1. 担当教師によるマンツーマン指導
・魅力2. オーダーメイドのカリキュラム
・魅力3. 3,960円/30分で必要な分だけ受講
質問のみのお問い合わせも受け付けております。
まとめ
Pythonはエラーの解決方法やプログラムの書き方が難しくないので、プログラミング初心者におすすめのプログラミング言語です。
プログラミングが初めての方が、Pythonの初級レベルを目指すために必要な学習項目は下記のとおりです。
Python初心者を目指すための入門項目 |
|
---|---|
Python初心者が押さえるべき基礎項目 |
|
また、Pythonの基礎をしっかりと習得したい方には、無料学習サイトの「Tech Teacher Blog」がおすすめです!丁寧な解説に加えて、サンプルコードと練習問題があるので、インプットとアウトプットを効率良くできます。
学習サイトの内容で不明点があったり、エラーが解決できなかったりなど、独学中につまずいた場合には「Tech Teacher」にお気軽にお問い合わせください。