初心者のためのpython入門

自分がつまづいたところやつまづきやすいところを中心に書いていきます。また、役に立つライブラリの紹介などをしていきます。

2017-12-01から1ヶ月間の記事一覧

ポリモーフィズム

ポリモーフィズムとは ポリモーフィズムとは、日本語で多態性と言います。多態性とは、クラスの種類に関わらず、異なるオブジェクトに対して同じ操作を適用することです。 ポリモーフィズムの実装 説明を聞いてもわかりにくいと思うので、例を見ましょう。 #…

継承[2]

継承をより詳しく 前回は、継承の基礎を説明しました。継承とは、既存のクラスを指定し、追加や変更したい一部だけを定義することにより新しいクラスを定義する方法でした。今回は、もう少し詳しく、継承におけるメソッドのオーバーライドや多重継承について…

継承[1]

継承 継承とは、既存のクラスを利用して新たなクラスを定義する方法のことです。既に存在するクラスの機能を一部変更したり、追加したい場合にもともとのクラスを自体を変更してまうと、他のプログラムとの互換性などを損なう可能性があります。そのような場…

カプセル化[2]

カプセル化の続き 今回は前回に続き、カプセル化について説明します。今回はプライベートなクラス変数とプライベートなメソッドについて説明します。 クラス変数 クラス変数は、クラスに属する変数です。今まで定義してきた変数は、インスタンスに属するメン…

カプセル化[1]

カプセル化 Pythonはオブジェクト指向のプログラムを自由に開発することができます。 しかし、そのためにインスタンスの属性を書き間違える、呼び出してはいけないはずの関数を呼び出すなどのミスをしてしまうことがあります。このようなミスを未然に防ぐた…

特殊メソッド

特殊メソッド 前回クラスの中で__init__()メソッドを定義しました。__init__()メソッドは、渡された引数を使い、クラス定義から新しく作成されたオブジェクトを初期化する特殊メソッドです。今回は__init__()メソッド以外の特殊メソッドについて説明したいと…

クラス

クラスとオブジェクト オブジェクトが何かしらの形のあるものだとすれば、クラスはその形を作るための鋳型だと考えることができます。この鋳型があることにより、大量のオブジェクトを好きな時に簡単に作れるようになります。 クラスの定義とインスタンスの…

オブジェクト指向

オブジェクト指向学ぶ理由 ここまで説明してきた内容で、ほぼ全てのプログラムを書くことができます。しかし、ここまでの説明の中に出てきたものだけでコードを書いていくと、プログラムが非常に大きくなってくると開発者の頭が追いつかず、上手く書けなくな…

モジュールについてより詳しく

モジュールについて詳しく知ろう 前回モジュールのインポート方法について大まかに説明しました。今回は、もう少し詳しく説明していきます。 モジュールのサーチパス 前回は、同じディレクトリ(フォルダ)に存在するモジュールをインポートしました。Pythonは…

スクリプトの作成とモジュール

スクリプトの作成とモジュール 前回の最後の方のサンプルを除き、その全てをPythonの対話型インタープリタの中で実行してきました。 しかし、インタープリタで実行すると毎回起動するたびに前回のコード(定義した関数やクラスなど)は失われてしまいます。そ…

スコープと名前空間

スコープと名前空間 前回の説明の中で、スコープという言葉が出てきたと思います。今回は、そのスコープと名前空間について説明したいと思います。 スコープ スコープとは簡単に言えば「変数が使用できる範囲」です。これは変数がプログラムのどこからでも好…

関数[2]

引数について 前回は関数の定義や呼び出しについて説明しました。そして、最後に引数について実引数と仮引数の違いを補足として説明しました。今回は、引数の色々な定義の仕方について説明していきます。具体的には、位置引数、キーワード引数、デフォルト引…

関数[1]

関数とは これまでのコードは非常に短いものでした。確認のためやサンプルとして提示する分には問題ありませんが、現実的なコードはこれほど短いということはないでしょう。コードが長くなればなるほど似たような処理が増えてきます。その度に同じような処理…

繰り返し「for」

「for」に入る前に 前回は登場しませんでしたが、今回はイテレータというものが登場します。イテレータとは、イテレーションごとにリストや辞書などから要素を1つずつ取りだして返すものです。イテレーション とは、ループのことです。また、Pythonにおいて…

繰り返し「while」

繰り返し「while」 繰り返しは、条件が成立する限り同じブロックを実行します。下に繰り返しの簡単なフローチャートを載せてあります。 繰り返しの書き方 単純な繰り返し まずはサンプルプログラムを見ましょう。インデントは空白4つです。 >>> time = 10 >>…

分岐

分岐 分岐は、実行する文を条件により変えます。以下に分岐の簡単なフローチャートを載せてあります。 分岐の書き方 単純な分岐 まずはサンプルプログラムを見ましょう。インデントは空白4つです。 >>> feel = 'sleep' >>> if feel == 'sleep': ... print('G…

Pythonの書き方と制御構造

Pythonの書き方 Pythonはインデントによりプログラムの構造を定義しています。インデントとは、行頭の位置を調整することです。それにより、Pythonはプログラム構造を空白により制御することができます。この点は、他の言語と大きな違いです。通常、インデン…

集合

集合について 集合は、辞書からキーだけを残した辞書のようなものです。つまり、集合においてもキーは一意でなければいけません。集合は、要素としてその値が存在するかどうかだけに注目しているときに使います。Pythonの集合は、数学における集合とほぼ同じ…

辞書

辞書について 今回は、辞書について書いていきます。 辞書は、個々の値に一意なキーを与えたリストだと考えることができます。 リストでは、オフセットを使って要素を操作しました。 一方、辞書では順序が管理されていないので、キーを用いて要素を操作しま…