
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
学習を始めるにあたり、Pythonがどんなプログラミング言語であるかについて解説します。
Pythonの統合開発環境であるAnaconda(アナコンダ)について説明します。概要からダウンロード・インストールから、その中の一つの機能であり、IDEでもあるSpyder(スパイダー)起動までの一連の流れを説明します。
Anacondaは、以下のURLでダウンロードできます。
https://www.anaconda.com/
Pythonの学習を始めるにあたり、基本データ型の概念とその種類について説明します。
Pythonのデータの基本単位であるオブジェクト(Object)について説明します。
printf()関数を用いて、「HelloWorld」という文字列を表示したり、数値や計算結果を表示する方法について説明します。
Pythonを用いて四則演算や剰余、べき乗など様々な演算を行う方法について説明します。
変数の概念とその使い方について説明します。変数を用いた演算の方法についても説明します。
演算ができるのは数値ばかりではなく、文字列でも演算が可能です。ここでは文字列を用いた演算について説明します。
講義の補足です。0での割り算は禁止されており、実際に行うとどうなるかについて説明しています。
プログラムに注釈を入れるコメントの使い方について説明します。
また、その技術を応用したコメントアウトの活用方法についても説明します。
実際にコメントが記述されたソースコードを体験してみます。
また、コメントアウトも実際に試してみます。
関数(かんすう)の概念とPythonにもともと組み込まれている組み込み関数について説明します。
実際に様々な組み込み関数の動作をサンプルプログラムを通して確認してみます。
print関数について詳しく説明するとともに、様々な使用方法を説明します。
print関数の様々な使い方を実際のプログラムを通して体験します。
ユーザーからキーボードからの入力を促すinput関数の使い方を紹介します。
input関数の様々な使い方を実際のプログラムを通して体験します。
文字列オブジェクト(strクラス)とそのさまざまなメソッドの使い方を通し、オブジェクトとメソッドの関係性について説明します。
条件分岐の基本であるif文の使い方について説明します。
Spyderを使ってif文を使ったプログラムを実際に入力・実行してみます。
条件によりプログラムの流れが変わることを確認します。
複数の条件を記述する際に必要となる、if~else文、およびif~elif~else文について説明します。
実際にSpyderでif~elseを使ったサンプルを実行してみます。
条件によってどのような違いが出るかを実際に体験してみます。
andやor等の論理演算を使った方法や、if文のネストを使った方法で複数の条件を記述する方法を説明します。
複数の条件分岐の処理を実際のプログラムを実行することにより体験します。
条件式の真偽値をコンソールで確かめてみます。
条件分岐は数値だけではなく文字列でもよく行われます。
ここでは文字列の条件分岐の方法について説明します。
文字列の条件分岐を実際のサンプルで体験します。
if文についてのその他の話題について説明します。
notや()を用いた複雑なif文について説明します。
notや()を用いた複雑なif文の例を紹介します。
while文を使った繰り返し処理の記述方法について説明します。
実際にwhile文の様々なサンプルを実行して動作を確認します。
for文を使った繰り返し処理の記述方法について説明します。
実際にfor文の様々なサンプルを実行して動作を確認します。
breakとcontinueを用いてループの流れを制御する方法について学習します。
breakとcontinueで分岐処理の流れを変える方法を実際に試してみます。
二重ループ、三重ループといった、多重ループの記述方法について学習します。
while、forの多重ループを実際に動かしてみます。
forループ、whileループは共にif文同様にelseで終了することが出来ます。
その使い方と注意点について説明します。
while及びforで実際にelseの入ったループを試してみます。
Pythonで利用できるデータ構造であるコンテナのリスト・タプル・集合・辞書の概要について説明します。
データ構造のうち最も使用頻度が高いリストについて説明します。
リストのプログラムを実際に実行してみます。
リストによく似たデータ構造であるタプルの使い方とリストとの違いについて説明します。
タプルを使ったサンプルを実際に実行してみます。
リストに似た構造があることと、変更可能な特徴があることを確認します。
集合演算などが行える集合の特徴と使い方について説明します。
集合を使ったプログラムを実際に実行してみます。重複の禁止や集合演算を実際に体験してみます。
キー(key)と値(value)の組み合わせでデータを管理する辞書の使い方について説明します。
辞書を使ったサンプルを紹介します。
コンテナの各データ構造とfor文を組み合わせてすべてのデータにアクセスする方法について説明します。
リスト、タプル、集合、辞書それぞれに特徴があります。
各種のコンテナのデータ構造の要素にfor文でアクセスする方法について説明します。
リストなどのコンテナと関連の深い関数とその使い方について説明します。
コンテナ(主にリスト)に関連する関数とその使い方を紹介します。
Pythonのオブジェクトにはミュータブル(mutable)とイミュータブル(immutable)なものが存在します。
その種類の違いと性質について説明します。
ミュータブル・イミュータブルなオブジェクトの違いを実際のサンプルコードを基にして体験してみます。
変数の値渡しと参照渡しの違いとその意味について紹介します。
値渡しと参照渡しの違いを実際のサンプルプログラムを通して学習します。
mutableなオブジェクトのコピーの方法について説明します。
オブジェクトのコピーの方法にはシャロ―コピーとディープコピーといった方法があります。
シャロ―コピーとディープコピーの違いを実際のサンプルプログラムを通して学びます。
※映像の中のobj_cpy4.py並びにobj_cpy5.pyに誤りがあります。
print(v1)
print(v1)
となっている部分は
print(v1)
print(v2)
の誤りです。訂正してお詫びいたします。
ダウンロードできるソースコードでは誤りが訂正されています。
コンテナ型の応用の一つとしてシーケンス型について学習します。
まずはリストでその構造を説明します。
シーケンス型のサンプルプログラムを実際にリスト・タプルで実行してみます。
文字列のシーケンス型について説明します。
文字列とシーケンスの実際のサンプルを見てみます。
シーケンス型およびスライス(slice)についてまとめます。
シーケンス型のまとめを実際のソースコードを通して行います。
内包表記の概念について説明し、リストの内包表記を作る方法について説明します。
実際にリストの内包表記を作ってみます。
内包表記の応用として二重の内包表記について説明します。
二重の内包表記を実際に実装したソースコードを実行してみます。
リスト以外のコンテナである、タプル、集合、辞書の内包表記について説明します。
タプル、集合、辞書の内包表記を実装してみます。
例外と例外処理について説明します。例外処理に用いるtry:~catchの使い方を説明します。
実際に例外が発生されるプログラムと、それに対する例外処理の実例を紹介します。
try~exceptの後に続くelseとfinallyの意味と使い方について説明します。
elseとfinallyを用いた例外処理を実際に体験します。
Pythonは全てがオブジェクトであり、例外もまたオブジェクトです。
例外のオブジェクトは「例外クラス」と呼ばれる種類で分類されています。
実際に例外オブジェクトを取得するプログラムを作成します。
一度に複数の例外が発生した場合の対処方法について説明します。
実際のサンプルを通して複数の種類の例外への対応方法について説明します。
pass(パス)は何もしない命令で、例外処理でしばしば用いられます。
例外処理以外にもどのような場面で使用するかも含めて説明をします。
実際のサンプルを通してpassの使い方について学習します
Pythonで関数を作る方法について説明します。
実際に様々な関数を作り実行してみます。
関数を自作することはなかなか困難です。そこで、実際に様々な関数のサンプルに触れながら実際に関数を作成するとはどういうことかについて理解を深めていきましょう。
様々な関数を実際に実装し、その特徴と使い方について説明します。
Pythonには自由な長さの引数を設定できる可変長引数(かへんちょうひきすう)という機能が存在します。その使い方を消化しいます。
実際に可変長引数を持つ関数を定義し使用してみます。
可変長引数を持った関数を実際に作成してみます。
タプルおよび辞書のケースについてそれぞれ説明します。
実際に可変長引数を持つ関数を実行してみます。
大規模なプログラムを分割する最も基本的な方法としてモジュール(module)とその使い方を紹介します。
外部モジュールを読み出すプログラムを実際に実行してみます。
複数のモジュールをまとめたものがパッケージ(package)です。パッケージの基本的な使い方について説明します。
実際にパッケージを使ったサンプルの使い方を学びます。まずは__init__.pyが空の場合について説明します。
パッケージの高度な使い方について説明します。
パッケージを使ったサンプルの使い方の第2弾です。__init__.pyに記述がある場合について説明します。
モジュール名およびパッケージ名が長すぎる場合に、エイリアス(alias)を使用して名前を短くすることが出来ます。
エイリアスを使ったソースコードを紹介します。
モジュールの説明で使ったcalc.pyおよびパッケージpkg1、pkg2を再び使用します。
オブジェクト指向の基本的な考え方と、Pythonにおいてクラスを定義する方法について説明します。
クラスからインスタンスを生成し、オブジェクトを操作する方法について説明します。
実際にPersonクラスを使ったサンプルを実行して内容を確認してみます。
Personクラス以外にもクラスを作ってみます。様々なタイプのメソッドの処理を実装してみます。
実際に紹介したクラスを実装してみます。
コンストラクタには引数を設定することが出来ます。その方法について説明します。
引数付きコンストラクタを実際に実装したサンプルを実行してみます。
継承と、それに関連するスーパークラス・サブクラスの概念について説明します。
クラスの継承を実装したサンプルを実際に実行してみます。
この講座は、Python言語をこれから学びたいと考えている全ての人たちの講座です。
プログラミングを学ぶためには、単に簡単な文法を学び、サンプルプログラムを写しているだけでは実力はつきません。
そこで、この講座では可能な限りたくさんの練習問題やサンプルコードを用意し、
それらに触れながらPython言語を学ぶべるようにしています。
この講座の受講対象となるのは以下のような方々です。
【対象】
・これからプログラミングを学ぶ最初の言語としてPythonを選択したい。
・一度Pythonの学習をしてみたが、入門書が難しすぎた(優しすぎた)。
・すでにPython言語についてはある程度学んだが、高度なプログラムが作れない。
・既に他の言語を学んでいるが、Python言語も学んでみたい。
・Pythonを使ってゲームを作るための基礎的な実力を身につけたい。
・人工知能や機械学習のプログラミングを始めるために、Python言語をあらかじめ学んでおきたい。
この講座では、開発環境としてAnacondaのSpyderを利用し、簡単なサンプルから複雑な処理まで一通り学習していきます。
基本的な文法や、簡単なサンプルに触れながら、徐々にプログラミングの実力を培った後、
最終的にポーカー ゲームのプログラムを作るところまで説明していきます。
Pythonに限らず、プログラミングを初めてみたい方は気軽にチャレンジしてみてください!