【Python】Pythonは型が命です!【基本講座】

Pocket

【Python】Pythonは型が命です!【基本講座】

Pythonを勉強していてもっとも理解が必要なのは、型(Type)です。
自分が今、どの型(Type)の処理をしているのかを常に理解しておくことがPythonマスターの第一歩といっても過言ではありません。

出典:http://www.photo-ac.com/

Pythonで扱う代表的な型(Type)を覚える!

int型

int型は、プログラム経験のある人には、お馴染みかもしれません。
整数を扱う時の型です。
他の言語との違いは、例えば、C言語のintの場合、4バイトなら最大値2の31乗-1、最小値-2の31乗と決まっているのに対して、Pythonでは、メモリ容量が許す限り、任意の大きさの整数を表現できると言った特徴があります。

float型

float型については、他のプログラム言語同様、コンピュータは浮動小数点という方式で小数を表現します。

str型

str型は、基本的に文字列を扱う時に使う方です。C++などでstringとしてあつかったこともあるかとおもいます。str型は、シーケンス型というデータ型の一つになります。
シーケンスとは「連続(しているもの)」や「一続き(のもの)」という意味があり、文字列は文字要素が一続きにまとまったものです。イテラブル(iterable)と言われるので覚えておきましょう。

list型

list型は、要素をカンマで区切り、全体を角括弧で囲んで記述します。要素の数と型に制限はないため、いくらでも深いデータ構造をとることが可能です。
※要素には、文字列や整数どちらでも取れます。

list型もシーケンス型のひとつになります。つまり、イテラブル(iterable)です。

tuple型

tuple型もlist型同様に、要素をカンマで区切っていきますが、全体を丸括弧で囲んで記述します。

では、list型とtuple型では、どう違うのでしょうか?

list型はミュータブル(mutable)に対して、tuple型は、イミュータブル(immutable)であるという特徴があります。
ミュータブル(mutable)というのは、変更可能な変数を指します。
イミュータブル(immutable)は、ミュータブル(mutable)の逆で、変更不可能な変数を指します。

つまり、tuple型は、定義した後に要素の追加や削除はできません。
そのためか、list型よりメモリ使用量が小さいという利点があります。

tuple型もシーケンス型のひとつになります。つまり、イテラブル(iterable)です。

dict型

dict型は、辞書型とも言われ、シーケンス型の一つです。つまり、イテラブル(iterable)です。
識別用の値(key): 値のペアをカンマで区切って並べ、波括弧{} で囲んで記述します。

list型やtuple型とは、異なる記述になります。dict型は、要素の順序を管理しないという特徴があり、インデックス地やスライスで要素を選択することができません。

では、dict型をなぜ採用したのか?

それは、個々の要素に識別用の値を設定することが可能だからです。

個々の要素に識別用の値を設定することが可能であれば、何がうれしいのか?

更新可能(mutable)なデータ型なら何でも指定することができるからです。
勘の良い人なら、C++などで言うところの、連想配列、ハッシュなどのことかと気付くかもしれません。

set型

set型とは、集合を言います。

集合とは値のないキーだけの辞書のようなもので、順序付けられていない要素の集まりを表します。dict型と同様、識別用の値(key)は、重複してはいけません。
set型では集合論の和、差、積といった集合演算ができます。

set型は、カンマで区切った値を波括弧で括って記述します。

※空集合の記述は、波括弧を書くだけでは、空辞書になってしまうので注意。

と記述することで、空集合を表現できる。

まとめ

いかがだったでしょうか?

C++などから来た人には、意外に少なく感じましたか?または、見慣れない言葉に戸惑いましたか?

でも、Pythonの頻出の型は、これくらいです。
それぞれの特性を覚えることが初学者脱却の一歩です。
是非理解して覚えてください。

また、プログラムを組んでいてどうしても、この変数の型は何なのかわからないときは
下記のようにすれば確認できます。

また、VSCodeを使っている人は、Pyrightをextentions(拡張機能)することで、任意の変数にマウスオーバーすると型が表示されます。型チェックを行うツールです。

Pythonおすすめ書籍

最初の2冊は初心者向けです。Effectiv Pythonはこの2冊を終えてから読むとかなりわかりやすく感動できると思います。

基礎 Python (IMPRESS KISO SERIES)

新品価格
¥6,200から
(2020/4/21 20:50時点)

入門 Python 3

新品価格
¥4,070から
(2020/4/21 20:53時点)

Effective Python ?Pythonプログラムを改良する59項目

新品価格
¥3,520から
(2020/4/21 20:52時点)

独学に限界を感じていませんか?

プログラミング初学者がもっとも陥りやすいのは、挫折です。

なぜ?挫折するのでしょうか?

それは独学だけでは、限界があるからです。

でも、あきらめてはそこで終わりです。

プログラミング言語習得には、メンターと呼ばれる教えてくれる人間が必要です。メンターがいれば、挫折する確率がグンと低くなります。

困ったときに、いつでも教えてくれる先生がいれば心強いと思いませんか?

でも、先生って、学校行く時間もないし、、、そんなこと思っていませんか?
今は、Webでプログラミングが学べる時代なんですよ!

でも、お高いんでしょ?

うーん。これは考え方なのかもしれないんですが、例えば、こう考えてはどうでしょうか?
スクール代金が1コース20万円として、その後、ITエンジニアに就職したら、平均30万円以上は、稼げるのですぐに元が取れますよね?
この数値は、リクナビなど転職サイトを検索すればすぐ出てくる数値です。

今一時の出し渋りにより、一生の賃金を損することになるか、倍以上手に出来るかは、自明ですよね?

でも、どこが良いのかわからない。

そこで、厳選したプログラミングスクールと動画サイトをご紹介いたします。