学習方法

Python初心者が学習すべき基礎がわかる!サンプルコードで練習しよう

Pythonは、データ分析やWebアプリ制作、機械学習など、さまざまな使い方ができるプログラミング言語です。プログラミングに興味がある方のなかには、下記のような疑問がある方も多いのではないでしょうか。

  • Pythonを学べば何ができる?
  • Pythonの基礎って何を学べばいい?

    今回は、下記の2段階に分けてPythonの入門~基礎内容まで紹介します。

    • Python初心者を目指すための入門項目
    • Python初心者が押さえるべき基礎項目

      まずPython初心者でも簡単に作れる制作物を紹介してから、それぞれの制作物を完成させるために必要な知識を解説します。それぞれサンプルコードがあるので、解説を見ながら一緒に手を動かしてみてくださいね。

      プログラミングやPythonに興味がある方は、ぜひ最後までご覧ください。

      この記事でわかること
      • Pythonがおすすめな理由
      • Python初心者が作れるようになるもの
      • Pythonでオリジナルゲームを作るために必要な入門~基礎知識
      • Pythonで機械学習をするために必要な入門~基礎知識
      • 無料の学習サイトの魅力

      Pythonはプログラミング初心者におすすめ!

      数多くあるプログラミング言語のなかでも、Pythonはプログラミング初心者にもっともおすすめです!おすすめな理由は下記のとおりです。

      Pythonのおすすめポイント
      • 学習方法がたくさんある
      • エラーの見つけ方が簡単
      • プログラムの書き方が難しくない
      • フレームワークや関数が豊富で実装する内容が少ない

      Pythonでは「関数」と呼ばれる、複数の実装内容をパッケージ化したものがたくさんあります。そのため、C言語では5行以上書かなければならない内容でも、Pythonでは1行程度で書ける場合も多くあります。

      また、参考書や無料の学習サイト、Pythonスクールなど、さまざまな学習方法から選べて、学びやすい環境があるのもおすすめする理由です。

      Pythonはプログラミングの難易度が低く、多様な学習方法から選べるため、プログラミングをしたことがない人におすすめといえます。

      Pythonについて詳しく知りたい方は、下記をチェックしてみてくださいね!

      Pythonとは?特徴やできること、学習するメリットを解説次のページ この記事では、「Pythonとは何か?」について解説していきます。 ・Pythonってよく聞くけど、どんな特徴がある...

      Python初心者レベルで作れるもの

      Python初心者レベルで作れるようになるものは、下記のとおりです。

      • 簡単なゲーム
      • 機械学習モデルの実装
      • Webスクレイピング

        Pythonを習得するうえでは、まずは作りたいものなど最終目標を決めるとスムーズに学習が進みます。そのため、プログラミング練習を始める前に、まずは何を作りたいかを決めましょう

        これから、上記の「Python初心者レベルで作れるもの」を例を挙げながら紹介します。目標を決めるためにも、それぞれ順番にチェックしていきましょう。

        Pythonとは?特徴やできること、学習するメリットを解説次のページ この記事では、「Pythonとは何か?」について解説していきます。 ・Pythonってよく聞くけど、どんな特徴がある...

        簡単なゲーム

        本格的なゲーム制作にはC#が一般的に使われますが、Pythonだけでも簡単なゲームを作ることが可能です。例えば、下記のように基本的なPython文法でゲームを作れます。

        • 変数やランダム関数を使った「じゃんけんゲーム」
        • 繰り返し文を使った「スロットゲーム」
        • 条件文を使った「マルバツゲーム」

          ゲーム作りは作った後の達成感だけではなく、友だちから遊んだ感想をもらえて、学習のモチベーションにつながる良さがあります。遊び感覚でPythonを学びたいなら、簡単なゲームを目標にすると良いでしょう。

          簡単なゲーム制作を目標にすると良い人
          • ゲームが好き
          • 自分でアプリを作ってみたい人

          機械学習モデルの実装

          Pythonをある程度習得できれば、機械学習モデルの実装も可能です。例えば、重回帰モデルや決定木など、一般的に使われる手法を1から自分で実装できるようになります。

          Pythonでは数式処理に特化した関数が多くあったり、素早い数式処理ができるフレームワークが使えたりと、機械学習向けの環境が整えられています

          データサイエンスに役立つPythonのおすすめライブラリを紹介! 「Pythonでデータ分析を始めたいけど、なにから始めたらいいのか分からない…」 「Pythonでデータ分析をしたいけど、どの...

          機械学習と言えば、Pythonと言われるほどです。Pythonの数式処理や繰り返し文、printなどの入門・基本事項を押さえて、機械学習モデルの実装を目指しましょう

          機械学習モデルの実装を目標にすると良い人
          • データ分析をしたい人
          • 数学が好きな人
          • データサイエンティストとして就職・転職をしたい人
          【1分でわかる】初心者でも簡単にPythonでSVMの実装ができるやり方を学ぶ!Pythonで機械学習をする際に、SVM(Support Vector Machine)をはじめにやってみる方も多いと思います。この記事はSVMを通した機械学習と、SVMについてPythonでの実装を中心に初心者でも簡単に理解できるようわかりやすく解説しています。...

            Webスクレイピング

            Python初心者レベルでは、Webスクレイピングもできるようになります。

            Webスクレイピングとは、ホームページから情報を自動的に抽出することです。Webスクレイピングの抽出結果は、自然言語処理用のデータとして役立ちます。

            Webスクレイピングをするためには、Webスクタイピング用のフレームワークを使いこなせるようになる必要があります。

            Webスクレイピングを目標にすると良い人
            • Pythonで自然言語処理をしたい人
            • ホームページやSNSなどWeb上の情報を使って、データ解析をしたい人
            自然言語処理でできることは?具体例を8つ紹介!自然言語処理で何ができるかご存知ですか? 自然言語処理は機械翻訳やAIチャットボットなどさまざまな分野で利用されています。本記事を読めば、AI初学者でも、自然言語処理をより深く理解できます。...

            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の環境を構築したい人は、下記を参考にしてくださいね!

                  迷わない!Pythonの環境構築と操作方法を簡単解説 前のページ|次のページ 2章では、AnacondaとJupyter Notebookを利用して、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の出力関数printの要点を徹底解説!基本〜応用 前のページ|次のページ 3章ではPythonで数値や文字列を出力するためのprint関数について解説します。 これから登場するプ...

                    四則演算

                    Pythonでは電卓のように、四則演算ができます。実装の仕方は下記のとおりです。

                    #足し算
                    10+10
                    
                    #引き算
                    10-10
                    
                    #掛け算
                    10*10
                    
                    #割り算
                    10/10

                    繰り返し足し算をするときや上限値まで特定の動作をしたいときなど、さまざまなプログラムへ応用できます。数値の型やほかの演算方法については、下記で詳しく解説しています。

                    int型・float型とは?Pythonの数値型と演算子を解説 前のページ|次のページ 4章ではPythonにおける数値の型と算術演算子について解説します。 数値の型については、「int型」と...

                    変数

                    プログラミングでは、値や文字をプログラム上に保持してもらう先を「変数」と表現します。変数の書き方は下記のとおりです。

                    num = 10
                    
                    # 文字列を格納するときには「''」で囲む
                    str = 'teacher'
                    
                    

                    変数では、数値や文字、文字列などあらゆるものを保持できます。

                    変数を使わずに直接値を書いても実行できますが、値が変わるごとに変えなければいけなくなるため面倒です。そのため基本的に値など変わる可能性があるものは、変数として定義します。

                    # NG
                    10 + 20 = ans
                    
                    # OK
                    num1 = 10
                    num2 = 20
                    num1 + num2 = ans
                    

                    また、変数の名前の付け方にはルールがあります。慣れ始めると、変数のルールを覚え直すのが大変になるので、下記を参考に少しずつ覚えていきましょう。

                    Python 変数の基本を解説: 初学者のための入門ガイド 前のページへ|次のページへ 7章では、Pythonにおける変数の宣言・代入と代入演算子、および変数名に関する注意点について解説しま...

                    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以外です')

                      実装して、上記の結果を確認してみましょう!

                      条件文は、「条件に当てはまる場合にはエラー文を表示し、それ以外の場合には次のプログラムを実行」といったように、エラーを解析するときに便利です。

                      複数の条件文の書き方については、下記をチェックしてみてくださいね!

                      Python if文の条件分岐を解説: 練習問題付き 前のページ|次のページ 8章ではif文による条件分岐について解説します。 if文による条件分岐 条...

                      繰り返し文|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以外の繰り返し文の記載方法は、下記を参考にしてくださいね。

                      Pythonのforループとwhileループを徹底解説!繰り返し処理の実装 前のページ|次のページ 10章では『for文』と『while文』による繰り返し処理について解説します。 for文の書き方、whi...

                      関数化|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|関数の基本を徹底解説!戻り値・引数を理解しよう 前のページ|次のページ 11章ではPythonにおける『関数』について解説します。 本記事では、「関数とは何か?」「関数の使い方...

                      Python初心者には無料学習サイトがおすすめ!

                      Pythonをこれから学び始める初心者の方には、無料学習サイトがおすすめです!無料学習サイトがおすすめな理由は下記のとおりです。

                      • お金がかからないので気軽に始められる
                      • 授業時間など時間制限がないので気になることはとことん学べる
                      • 早朝でも夜でも自分が勉強したいタイミングで学べる

                        無料学習サイトの最大の魅力は、学び放題にもかかわらず、お金が一切かからないことです!初めてPythonを学ぶ場合には、そもそもPythonが自分に合っているかどうか不安な方も多いでしょう。

                        無料学習サイトでは、受講料金や参考書代などの費用がかからないので、本格的に身につけようとしていない興味がある段階でも、気軽に学べます。

                        また、コンテンツの充実さは有料サイトやスクールに引けを取りません。例えば、弊社が運営する「Tech Teacher Blog」では、Pythonの概要〜基礎実装までコード・図説付きの解説と各章の練習問題があります。

                        インプットとアウトプット両方を自分が納得いくまで、無料でできるのです。練習問題を自力で解けたときには、大きな達成感を得られるでしょう。

                        お金をかけて勉強する方法はたくさんありますが、まずは無料の学習サイトで、「Pythonができるか」「楽しいと思えるか」を試してみることをおすすめします!

                        まとめ

                        Pythonはエラーの解決方法やプログラムの書き方が難しくないので、プログラミング初心者におすすめのプログラミング言語です。

                        プログラミングが初めての方が、Pythonの初級レベルを目指すために必要な学習項目は下記のとおりです。

                        Python初心者を目指すための入門項目
                        • Pythonコードの実行環境をつくる|Google Colaboratory
                        • モジュールを使えるようにする|import
                        • コメントを残す|#
                        • 文字を表示する|print
                        • 四則演算
                        • 変数
                        Python初心者が押さえるべき基礎項目
                        • 条件文・真偽値|if・True/False
                        • 繰り返し文|for
                        • 関数・クラス化|def・class

                        また、Pythonの基礎をしっかりと習得したい方には、無料学習サイトの「Tech Teacher Blog」がおすすめです!丁寧な解説に加えて、サンプルコードと練習問題があるので、インプットとアウトプットを効率良くできます。

                        学習サイトの内容で不明点があったり、エラーが解決できなかったりなど、独学中につまずいた場合には「Tech Teacher」にお気軽にお問い合わせください