Pythonの基本的な文法をまとめたチートシート的な何か

Photo by Chris Ried / Unsplash

Python3を教えてる時に、基本的なよく使う文法まとめて欲しいと言われたので、チートシート的に簡単にまとめておきます。

この投稿は、C言語など他のプログラミング言語をある程度理解しているPython初学者に向けたものなので、細かい説明は省略しています。

現在進行系で教えたりしているので、随時追記していきます。もしも追記・修正してほしい内容があれば、Twitter @viasnake にリプライかDMをください。返信は約束できませんが、気づいたら更新しておきます。

変数

Pythonは変数の型を自動的に判別します。また、変数の定義も必要もないので、いきなり変数に代入して問題ありません。

_str = "Hello world"
_int = 1
_float = 3.141592

上記の例の場合、 _str は文字列型、 _int は整数型、 _float は浮動小数点型となります。注意してほしいのは、型を明示的に宣言する必要がないだけで、ちゃんと型は存在しています。なので、文字列型を整数型として扱うことはできません。

リスト

Pythonのリストは他言語でいう所の配列に当たりますが違いがあり、要素数は決まっておらず、あらゆる型を入れることができ、動的にメモリが確保されます。

_list = [0, 10, 20, 30, "Apple", 5]
_tuple = (100, "Apple", 50.5, 5)
_dect = {"Apple": 100, "Banana": 50, "Melon": 500}

_list はリスト型、 _tuple はタプル型、 _dect は辞書型です。

リスト型には、複数の型を入れることができます。また、中身を後から変更可能です。(ミュータブル)

タプル型にも、複数の型を入れることができます。しかし、中身を後から変更できません。(イミュータブル)

辞書型は、リスト型やタプル型と異なり、データは順番に管理されず、KeyとValueで管理していく型になります。上記の例では、 Apple というKeyに 100 というValueが入っている形になります。中身は後から変更が可能です。(ミュータブル)

if文

if elif else があります。他のよくあるプログラミング言語とあまり差はありません。 elif はelse if の略です。

if score >= 80:
	printf("scoreは80以上です")
elif score >= 50:
	printf("scoreは50以上です")
else:
	printf("scoreは50未満です")

Pythonはインデント(スペースやタブなどによる字下げ)が重要です。インデントによってどこからどこまでが対象の処理であるかを判断しています。ちゃんとインデントしましょう。

while文

while です。他のよくあるプログラミング言語とあまり差はありません。条件を満たす限り、処理を繰り返します。

while i > 30:
	print("!!! While !!!")
	i += 1
else:
	print("!!! While Finish !!!")

if文同様にインデントが重要です。

for文

for です。条件を満たすまで、処理を繰り繰り返します。他のプログラミング言語とちょっと違います。

for i in range(10):
	print("!!! For iは" + i + "です !!!")
else:
	print("!!! For Finish !!!")

range は組み込み関数で指定された数から指定された数まで順番に取得することができます。

for i in range(10) の場合、10回処理を行い、iに0~9までの数を順番に入れて行きます。よって、1回目の処理ではiに0が、2回目の処理ではiに1が代入されます。