【Python】Pythonは型が命です!【基本講座】
Pythonを勉強していてもっとも理解が必要なのは、型(Type)です。
自分が今、どの型(Type)の処理をしているのかを常に理解しておくことがPythonマスターの第一歩といっても過言ではありません。
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)です。
1 2 |
例: l = ['a', 'b', 'c', 10] |
tuple型
tuple型もlist型同様に、要素をカンマで区切っていきますが、全体を丸括弧で囲んで記述します。
では、list型とtuple型では、どう違うのでしょうか?
list型はミュータブル(mutable)に対して、tuple型は、イミュータブル(immutable)であるという特徴があります。
ミュータブル(mutable)というのは、変更可能な変数を指します。
イミュータブル(immutable)は、ミュータブル(mutable)の逆で、変更不可能な変数を指します。
つまり、tuple型は、定義した後に要素の追加や削除はできません。
そのためか、list型よりメモリ使用量が小さいという利点があります。
tuple型もシーケンス型のひとつになります。つまり、イテラブル(iterable)です。
1 2 3 4 5 |
例: t = ('a', 'b') 【注意】要素が一つだけのとき t = ('a',) |
dict型
dict型は、辞書型とも言われ、シーケンス型の一つです。つまり、イテラブル(iterable)です。
識別用の値(key): 値のペアをカンマで区切って並べ、波括弧{} で囲んで記述します。
list型やtuple型とは、異なる記述になります。dict型は、要素の順序を管理しないという特徴があり、インデックス地やスライスで要素を選択することができません。
では、dict型をなぜ採用したのか?
それは、個々の要素に識別用の値を設定することが可能だからです。
個々の要素に識別用の値を設定することが可能であれば、何がうれしいのか?
更新可能(mutable)なデータ型なら何でも指定することができるからです。
勘の良い人なら、C++などで言うところの、連想配列、ハッシュなどのことかと気付くかもしれません。
1 2 |
例: d = {'a':1, 'b':2, 'c':3} |
set型
set型とは、集合を言います。
集合とは値のないキーだけの辞書のようなもので、順序付けられていない要素の集まりを表します。dict型と同様、識別用の値(key)は、重複してはいけません。
set型では集合論の和、差、積といった集合演算ができます。
set型は、カンマで区切った値を波括弧で括って記述します。
※空集合の記述は、波括弧を書くだけでは、空辞書になってしまうので注意。
1 |
s = set() |
と記述することで、空集合を表現できる。
1 2 |
例: s = {'a', 'b', 'c'} |
まとめ
いかがだったでしょうか?
C++などから来た人には、意外に少なく感じましたか?または、見慣れない言葉に戸惑いましたか?
でも、Pythonの頻出の型は、これくらいです。
それぞれの特性を覚えることが初学者脱却の一歩です。
是非理解して覚えてください。
また、プログラムを組んでいてどうしても、この変数の型は何なのかわからないときは
下記のようにすれば確認できます。
1 2 3 |
print(type(変数)) >> <class 'str'> |
また、VSCodeを使っている人は、Pyrightをextentions(拡張機能)することで、任意の変数にマウスオーバーすると型が表示されます。型チェックを行うツールです。
Pythonおすすめ書籍
最初の2冊は初心者向けです。Effectiv Pythonはこの2冊を終えてから読むとかなりわかりやすく感動できると思います。
|
|
|
独学に限界を感じていませんか?
プログラミング初学者がもっとも陥りやすいのは、挫折です。
なぜ?挫折するのでしょうか?
それは独学だけでは、限界があるからです。
でも、あきらめてはそこで終わりです。
プログラミング言語習得には、メンターと呼ばれる教えてくれる人間が必要です。メンターがいれば、挫折する確率がグンと低くなります。
困ったときに、いつでも教えてくれる先生がいれば心強いと思いませんか?
でも、先生って、学校行く時間もないし、、、そんなこと思っていませんか?
今は、Webでプログラミングが学べる時代なんですよ!
でも、お高いんでしょ?
うーん。これは考え方なのかもしれないんですが、例えば、こう考えてはどうでしょうか?
スクール代金が1コース20万円として、その後、ITエンジニアに就職したら、平均30万円以上は、稼げるのですぐに元が取れますよね?
この数値は、リクナビなど転職サイトを検索すればすぐ出てくる数値です。
今一時の出し渋りにより、一生の賃金を損することになるか、倍以上手に出来るかは、自明ですよね?
でも、どこが良いのかわからない。
そこで、厳選したプログラミングスクールと動画サイトをご紹介いたします。
- TechAcademy [テックアカデミー]※スクールの数が多い!返金制度あり!
- 【WebCampPRO】※WEB系に特化したスクール!返金制度あり!
- 【CodeCamp】※無料体験レッスンを受講すると受講料が1万円OFF!
- Python 3 入門+アメリカのシリコンバレー流コードスタイル
- 【Web開発初心者向け!】Web開発入門完全攻略 充実の18時間コース※動画で学びたい人はこちら!格安もあり!
- フロントエンドエンジニアになりたい人の Webプログラミング入門