1.1 組み込み型
Pythonは、プログラミングにおけるさまざまなタスクを解決できる多様な組み込みデータ型を提供してるよ。いくつかはもう勉強したことがあると思うけど、もう少し詳しく見てみよう。ここに主要な組み込みデータ型の簡単な説明があるよ:
-
int
— 小数部のない整数だよ。 -
float
— 浮動小数点数だね。 -
complex
— 複素数(実部と虚部で構成されてるよ)。 -
str
— 文字列。文字のシーケンスだね。 -
bool
— 論理データ型で、True
かFalse
を取るよ。 -
None
— 値の欠如を表す特別な型だね。 -
bytes
— 変更不可のバイト列だよ。 -
bytearray
— 変更可能なバイト列。 -
memoryview
— データをコピーせずにバイナリ形式で操作できるオブジェクト。
以下の表には、これらのデータ型とその特徴的な属性が表示されてるよ:
データ型 | 説明 | 使用例 |
---|---|---|
int |
整数 | x = 10 |
float |
浮動小数点数 | y = 3.14 |
complex |
複素数 | z = 1 + 2j |
str |
文字列 | s = "Hello, world!" |
bool |
ブール型 | is_valid = True |
None |
値の欠如 | result = None |
bytes |
変更不可のバイト列 | b = bytes([50, 100, 76]) |
bytearray |
変更可能なバイト列 | ba = bytearray([50, 100]) |
memoryview |
メモリ内のデータ表示 | mv = memoryview(b'abc') |
これらのデータ型を利用することで、Pythonであらゆるロジックを実現できるよ。基本的な算術演算やテキスト操作から、複雑なバイナリデータ処理やメモリ管理までカバーしてるんだ。
1.2 コレクション
Pythonではデータを保存するだけでなく、オブジェクトのグループをまとめて保存することもできるんだ。これらのタイプをコレクション
と呼ぶよ。コレクションは、要素のグループを保存、管理、処理するためのさまざまなデータ構造を提供してるんだ。以下にPythonの主要なコレクションタイプを示すよ:
-
list (リスト)
— 変更可能で順序がある要素の集まり。 -
tuple (タプル)
— 変更不可能で順序がある要素のシーケンス。 -
range (範囲)
— 通常ループで使用される数値のシーケンス。 -
set (セット)
— 順序がなくてユニークな要素のコレクション。 -
dict (辞書)
— ユニークなキーとその値のペアのコレクション。 -
frozenset (フローズンセット)
— 変更不可能なセットのバリエーション。
以下の表には、これらのコレクションとその特性が示されてるよ:
コレクションタイプ | 説明 | 例 |
---|---|---|
list |
変更可能で、要素が繰り返されることがある | my_list = [1, 2, 3] |
tuple |
変更不可能で、要素が繰り返されることがある | my_tuple = (1, 2, 3) |
range |
変更不可能な数値のシーケンス | my_range = range(1, 10) |
set |
順序がなくてユニークな要素の集まり | my_set = {1, 2, 3} |
dict |
キーと値のペアで、キーはユニーク | my_dict = {'a': 1, 'b': 2} |
frozenset |
変更不可能なユニークな要素の集まり | my_frozenset = frozenset([1, 2, 3]) |
これらのコレクションは、それぞれ異なる特性とメソッドを持っていて、プログラミングにおけるさまざまなタスクに適しているんだ。データを単純に保存するだけでなく、より高度なデータ処理と管理も可能にしてくれるよね。詳細は次のレクチャーで見ていこう。
1.3 クラスとオブジェクト
組み込み型は便利だけど、いつかはそれだけでは足りなくなることがあるよね。その時は、Pythonで自分の独自の型、つまりクラスを宣言できるんだ。
Pythonのクラスは関連する関数とデータをまとめる方法を提供してるよ。さらに、特定の動作やプロパティを持った現実世界のオブジェクトや抽象的なオブジェクトをモデリングするのに役立つんだ。
例えば「スマートフォン」というクラスを記述する必要があると想像してみよう。このクラスには、モデルやメーカー、メモリの容量、OSに関するデータを含めることができるよね。また、電源のオン・オフ、アプリのインストールなど、スマートフォンの動作を示す関数(メソッド)も含めるかもしれない。
クラスの作成はclass
キーワードを使って行うんだ。このステートメントは、新しいオブジェクト型を作成し、新しいクラスが他のクラスから属性とメソッドを継承できるようにするんだ。
まずは既存のクラスを使ってオブジェクトを作成する方法を学んでいこう。その後、時間が来たら自分のクラスも作成してみよう。
クラスには、そのクラス独自の組み込み関数(クラスメソッドとも呼ばれる)があることを知っておくと便利だよね。これらの関数は以下の形式で呼び出すんだ:
オブジェクト.関数(パラメータ)
ほら、format()
関数を文字列に対して呼び出したこと、覚えてる?それがまさにそのケースだったんだよ。細かいことは次のレクチャーで関数、クラス、オブジェクトを詳しく見ていくよ。
GO TO FULL VERSION