Python入門講座【無料のプログラミング学習講座】のイメージ画像

Python入門講座【無料のプログラミング学習講座】

  • 公開日:2018/09/19
  • 更新日:2020/05/24
  • 投稿者:n bit

最近特に注目度が高くなってきているプログラミング言語Python。転職、フリーランス、独立・起業を検討中、日々の業務が忙しい社会人等なら今こそ身に付けておきたいスキルの1つ。初心者向けにやさしいプログラミング学習内容のPython入門講座無料で公開しています。

  • Python

この記事は約 分で読めます。(文字)

はじめてのプログラミング学習に向いている
プログラミング言語『Python』

フリーランスや独立・起業、小規模企業なら、はじめてのプログラミング学習にPythonのプログラミング学習が以下の3つの理由によりおすすめ!

  • 効率化:雑務をプログラミングに任せ自分の得意とする業務に集中する時間を増やせる
  • 汎用性:自社サイトやブログ制作もPythonで一括し他に複数の言語を学ぶ必要がない
  • 低学習コスト:最もプログラミング初学者におすすめできる『やさしい言語 Python

フリーランス、転職や独立・起業を検討している方や日々の業務が忙しい社会人にも同じ理由でお勧めできます。


Pythonの入門講座の概要

当サイトのPython入門講座は完全無料で提供しています。またある一定のレベルまで早く引き上げることが出来るように初学者が最初につまずきやすいような部分は出来る限り考慮し、初学に不要と判断されるものは在る水準に達するまで触れないようにしています。

特にPythonの環境構築などは初学者が最もつまずきやすい部分で最終的な利用用途によっても環境開発が大きく異なるものです。そのため説明する側も網羅的に様々な環境構築方法を説明しているのを多く見受けます。

最終的には自分の利用用途が明確に固まってから必要となる環境を構築すれば良いので初めての学習段階では必要がないといえます。

とは言えコードを記述し実行して結果を確認する必要がありますので最低限Pythonのコードを記述して実行できる環境設定のみを解説し出来る限り早く学習へと進めるようにしました。

他にも過去に私が独学によってPythonを独学で習得してきた実体験をもとにつまずくポイントなどを洗い出しながら初学者が学習しやすいように工夫しています

Python学習の全体図と学習ポイント

Pythonの学習を大きく分けると3つのセクションに分けることができます。

  • コードの文法
  • アルゴリズム
  • 環境構築

コードの文法

『コードの文法』はPython言語の記述方法に関する内容です。ある命令を実行したい場合にPythonではどのように記述すればよいのかを学習していきます。

コード文法を学ぶときのポイントとしては最初から全てを記憶しようとしないことです。文法はある程度覚えておけば後々何かを作成するときに記述しながら徐々慣れて覚えていくのでも充分です。最低限どのようなコードがどのような用途で利用できるのかを理解しておきましょう。

当サイトの『Python入門講座』では前半部分で主にコード文法について学習していきます。

アルゴリズム

『アルゴリズム』とは何かの物事を実行するときの手順などを定式化したものです。

実はプログラミングではコードの記述方法を覚えてもアルゴリズムを自分で考えることができなければ自分の目的を達成しうるプログラムを構築することができません。

プログラミングも言語学習と言われるとおり一般的な言語の学習と通じるところがあります。例えば英語の学習に置き換えるのであれば英単語を覚えたり英文法を記憶しても、そもそも何をどのような順序で話すか頭の中で構築できていなければ何も相手に伝えることができないのと同じです。

アルゴリズムとコード文法の関係性は伝えたい内容とその表現方法となりますので基本的には表裏一体です。アルゴリズムの考え方とコード記述の手順等にはポイントがあります。Pythonに命令を伝えるときにどのような順序で何を伝えていけば良いのかを事前に考えられるようになるための学習と、手順等のポイントを踏まえたコードの改善方法なども合わせて学習を進めていきます。

環境構築

環境構築は解説するまでもなくそのままですね。プログラムを学習したり実行するための環境であったり、ウェブサイトやウェブアプリケーションなどを公開するための環境構築に関する学習です。

こちらに関しましては冒頭でも少し触れましたが最終的にあなたが必要とする目的・用途によって必要となる環境が変わってきます。主な用途としましては以下のようなものがあります。

  • パソコン内のローカル環境における学習環境
  • パソコン内のローカル環境で日常的に実行する必要があるPythonコードの実行環境
  • クラウドサービスなどのリモート環境におけるPythonコードの実行環境
  • サーバでのウェブサイトやウェブアプリケーションなどを公開するための環境
  • データ解析等の用途に対話型の実行・可視化環境

一言で環境構築といってもざっと並べるだけでこれだけの種類があるのです。どの環境を構築すべきかもわかっていない段階で無差別に様々な環境構築を学習するのは挫折しやすいパターンと言えます。ある程度学習を進めてからどのような環境が自分に必要なのかを理解した上で環境構築方法を学びましょう。

環境構築についてはいつ学習しても構いませんが、目安としてはコード文法は調べながらでもなんとなく自分が作りたいものができそうな手応えがあり、利用したい環境が自分の中で定まってきた時がタイミングと言えるでしょう。

Python入門講座【学習準備編】

Pythonのプログラミング講座を始める前に必要となる基礎知識などを学習します。

Pythonプログラミングの学習環境の用意

環境構築は後回しでと言った話がありましたが最低限学習を進めて行くのに必要な環境は用意する必要があります。でも、ご安心ください。数分で用意できる最も簡単で大変便利な環境を紹介します。

Python入門講座【やさしい編】

Python入門講座【やさしい編】は、Pythonの基本的な知識の習得と簡単なコードが自分で記述できるようになることを目的とした学習講座です。

本講座の最終は関数とクラスの記述方法まで進みますので基本的なプログラミングの形をおさえた簡単なプログラムであれは自分で構築できるようになります。

print関数

Pythonのプログラミング学習段階では頻繁に利用する『print関数』を最初に学習していきます。

変数の基本

値や要素を格納する『変数』について学習します。

基礎的な計算

Pythonを使った基礎的な計算方法について学習します。

データ型

各変数には格納された値によって『データ型』が決まっています。データ型によってその後使えるコマンドにも違いが出ますので重要な項目です。ここではデータ型の基本について学習します。

str型

文字列を扱うデータ型『str型』についてもう少し詳しく学習します。

list型

配列データを扱うデータ型『list』についてもう少し詳しく学習します。

dict型

キーと値を紐付けて複数の要素を扱えるデータ型『dict』についてもう少し詳しく学習します。

bool型

条件判定によく利用されるデータ型『bool型』を3回に分けてもう少し詳しく学習します。

if文

if文を使った条件分岐処理について学習します。

for文

for文を使った繰り返し処理について学習します。

while文

while文を使った繰り返し処理について学習します。

関数の基本

実行処理を1つにまとめて扱える関数の基本について学習します。

クラスの基本

複数の値と実行処理を1つにまとめて扱えるクラスの基本について学習します。

ここまでで『Python入門講座【やさしい編】』の講座は全て終了となります。

Python入門講座【ステップアップ編】

Python入門講座【ステップアップ編】は【やさしい編】等の学習を1通り終了した方向けに【組み込み関数編】や【応用編】の補助学習をおこないます。

初学者の場合理解し難い部分もあると思います。まずは一通り読んでこのようなものがあると認識しておく位でも大丈夫です。【組み込み関数編】や【応用編】で実際にコードや動きなどを確認しながら再度【ステップアップ編】で読み返すとより理解が深まります。

シーケンスとミュータブル・イミュータブル

オブジェクトの区別、シーケンスとミュータブル・イミュータブルについて学習します。

イテラブル(iterable)とイテレータ(iterator)

反復処理を行うオブジェクト、イテラブル(iterable)とイテレータ(iterator)について学習します。

ジェネレータ関数(generator)

イテレータオブジェクトを生成できるジェネレータ関数(generator)について学習します。

リスト内包表記

簡潔なコードでリストが生成できるリスト内包表記について学習します。

集合内包表記

簡潔なコードで集合(set)が生成できる集合内包表記について学習します。

辞書内包表記

簡潔なコードで辞書(dict)が生成できる集合内包表記について学習します。

ジェネレータ内包表記

簡潔なコードでジェネレータが生成できるジェネレータ内包表記について学習します。

lambda(ラムダ式:無名関数)

簡易な実行処理の場合に関数まで利用しなくてもより簡潔にコードを記述することができるlambda(ラムダ式:無名関数)の使い方について学習します。

三項演算子

if文の条件式を一行で記述できる三項演算子の使い方について学習します。

Python入門講座【組み込み関数編】

ここからは覚えておくと便利なPythonの『組み込み関数』についての学習です。

組み込み関数とは?

組み込み関数がどのようなものかといった解説から始め、その後は個別に各組み込み関数を解説していきます。

int、float、str関数

数字データのデータ型を相互変換するときや、事前にデータ型を宣言するときに利用する『int、float、str関数』について学習します。

input関数

コマンドラインから対話的にテキストを取得するときに利用する『input関数』について学習します。

type関数

各オブジェクトのデータ型を調べるtype関数について学習します。

isinstance関数

各オブジェクトのインスタンスが特定のデータ型かを調べるisinstance関数について学習します。

len関数

各オブジェクトの要素数や文字数を取得するlen関数について学習します。

min関数

オブジェクト内で最小値を持つ要素の値を求めることができるmin関数について学習します。

max関数

オブジェクト内で最大値を持つ要素の値を求めることができるmax関数について学習します。

format関数

動的に文字列を生成することができるformat関数について学習します。

range関数

連番や等差数列が生成できるrange関数について学習します。

zip関数

複数のリストオブジェクトをまとめて取得することができるzip関数について学習します。

enumerate関数

配列オブジェクトと合わせてインデックス番号を取得することができるenumerate関数について学習します。

round関数

浮動小数点の小数部を丸めて整数化したいときに利用する『round関数』について学習します。

abs関数

絶対値を求めるabs関数について学習します。

sorted関数

オブジェクト内にある複数の要素をソート(並び替え)したいときに利用する『sorted関数』について学習します。

map関数

配列オブジェクト内の全ての要素に対して関数の実行処理を適用したいときに利用する『map関数』について学習します。

filter関数

配列オブジェクト内の全ての要素から引数に指定した関数の条件に沿う要素のみを抽出する『filter関数』について学習します。

open関数

Pythonで基本的なファイル操作(作成、書込、保存)を行う『open関数』について学習します。

Python入門講座【エラー処理編】

Pythonでエラー処理を行うことができる『try関数』の基本について学習します。

Python入門講座【モジュール&パッケージ編】

Pythonの機能拡張する『モジュール』や『パッケージ』に関する学習です。

モジュール

『モジュール』の基本について学習します。

パッケージ

『パッケージ』の基本について学習します。

『random』モジュール

Pythonでランダムな処理機能を拡張する『random』モジュールについて学習します。

『math』モジュール

Pythonで数学処理を行う『math』モジュールについて学習します。

『os』モジュール

Pythonでディレクトリやファイルの操作を行う『os』モジュールについて学習します。

Python入門講座【応用編】

Python入門講座【応用編】は【やさしい編】、【ステップアップ編】、【組み込み関数編】等の学習を1通り終了した方向けに様々な応用的学習内容を公開しています。こちらは必要に応じて好きな項目から学習してください。

listの応用編

データ型『list』の応用的な使い方について学習します。

リストオブジェクト同士の差分の求め方

リストオブジェクト同士の差分の求め方について学習します。

日付の処理

時系列データなどを扱う時によく利用するdateモジュール等について学習します。

文字列の日付データをdatetime型に変換

見た目は日付データでも文字列型では日付として扱うことができません。そのため文字列の日付データをdatetime型に変換する方法について学習します。

日付の計算

日付データの計算方法について学習します。

文字列操作

文字列操作の基礎や使用事例について学習します。

replaceメソッドで文字列を置換・削除

replace を使用した文字列の置換・削除方法について学習します。

splitメソッドで文字列をリスト配列に分割

split を使用した文字列のリスト配列への分割方法について学習します。

joinメソッドでリスト配列の文字列を連結(結合)

join を使用したリスト配列の文字列を連結(結合)方法について学習します。

正規表現

正規表現の基礎や使用事例について学習します。

re.sub で「行頭」「行末」を置換

re.sub を使用した正規表現による「行頭」「行末」の置換について学習します。

re.sub で「平仮名(ひらがな)」や「カタカナ」、「漢字」を置換

re.sub を使用した正規表現による日本語「平仮名(ひらがな)」や「カタカナ」、「漢字」の置換について学習します。

in&out

データ等の入出力について学習します。

print関数のターミナル出力を上書きで1行表示

ターミナルに出力する値を上書きして常に1行で表示する方法学習します。

ファイル操作

ファイル操作について応用的な学習を行います。

withステートメントとopen関数を利用したファイル操作

Pythonでwithステートメントとopen関数を利用したファイル操作(作成、書込、保存)について学習します。

パフォーマンスチューニング

Pythonコードの記述方法を改善して実行処理のパフォーマンスをチューニングする方法について学習します。

実行処理時間の計測

パフォーマンスチューニングの最初の課題は現状の把握です。現在の実行処理時間の計測方法について学習します。

並列処理

並列処理(マルチプロセス)の基本と使い方

『multiprocessing モジュール』の『Process クラス』を使った並列処理(マルチプロセス)の基本と使い方について学習します。

Python入門講座【環境構築編】

Pythonを実行するための各種環境構築方法について解説しています。自分の必要とする環境にあわせてご確認ください。

最も簡単な学習環境『paiza.IO』

登録だけで保存機能まで利用できる構築が最も簡単な学習環境『paiza.IO』について解説しています。

Macのローカル環境にPythonのプログラミング環境構築

Macのローカル環境にPythonのプログラミング環境を構築する方法を解説しています。まず最初にHomebrewのセットアップからです。

Mac OS Catalina編

Mac OS CatalinaではmacOS Sierraのこのタイムインストール方法が変わっていますので今回環境構築方法を新しくまとめ直しています。

Homebrewのセットアップからpyenv環境を構築するまでの手順を簡易的にまとめたものを新しく用意しました。

詳細な内容も抑えていきたい方は下記から個別のリンクをたどり1つずつ進めていってください。

Homebrewのセットアップが完了しましたらpyenvを使ってPythonの本体をローカルの仮想環境にインストールする方法を解説します。

古い環境用

ブラウザで操作可能なpython環境『Cloud9』

ブラウザ上で操作可能なPython環境『Cloud9』について解説しています。常時実行しておくことができるためbot開発などによく利用されています。

Pythonで対話的なデータ解析環境構築『Jupyter Notebook、numpy、pandas、matplotlib』

Anacondaを利用せずJupyter Notebook、numpy、pandas、matplotlibをインストールする方法について解説します。

Pythonによるスクレイピング環境『beautifulsoup4・Selenium』

Pythonによるブラウザの自動操作やスクレイピングなどに利用される『Selenium』の環境構築について解説しています。

Pythonの文字コード自動推定ライブラリ『cChardet』

Pythonでスクレイピングやファイル等から読み込んだテキスト情報の文字コードを自動推定するライブラリ『cChardet』のインストール方法について解説しています。

Pythonによる形態素解析環境『Python・MeCab・NEologd』

Pythonで形態素解析を始めるために必要となる『Python・MeCab・NEologd』の環境構築方法について解説しています。

自然言語処理用のPythonモジュール『gensim』

Pythonの環境で自然言語処理を行う時に必須のモジュールとなる『gensim』のインストール方法について解説します。

Google製の機械学習用オープンソースライブラリ『scikit-learn』

Google製の機械学習用オープンソースライブラリ『scikit-learn』をPython環境にインストールする方法について解説します。

TensorFlow

Pythonの環境で機械学習を行う時に利用するGoogle公開のオープンソース『TensorFlow』のインストール方法について解説します。

Python入門講座【Django編】

Pythonをベースにしたフレームワーク『Django』について学習します。

AI、機械学習、ディープラーニング、自然言語解析

AI、機械学習、ディープラーニング、自然言語解析等について学習します。

今日のdot

当サイトのPython入門講座に関するコンテンツは無料公開中です。