Pythonはインデントが大事!

Typeで型を取得

type(型を取得したい値)

a = 10
b = 2.5
c = '文字'
d = True

print(type(a)) # 整数 int型(結果:<class 'int'>)
print(type(b)) # 浮動小数点数 float型(結果:<class 'float'>)
print(type(c)) # 文字列 str型(結果:<class 'str'>)
print(type(d)) # 真偽値 bool型(結果:<class 'bool'>)
データ型 説明
int型 整数 1, 10, -5
float型 小数点 1.5, 3.14
str型 文字列 ‘こんにちは’,’Hello World’
bool型 真偽値 True, False

Printで出力

数値を出力

print(10) # 結果:10

●変数に入れる場合

a = 10
print(a) # 結果:10

文字を出力

シングルクォーテーションかダブルクォーテーションで囲う。

print('文字') # 結果:文字

●変数に入れる場合

x = '文字'
print(x) # 結果:文字

数値と文字を合わせて出力

a = 10
x = '文字'
print(str(a) + x) # 結果:10文字

aはint型なので、str型に変換する必要がある。

演算子リスト

算術演算子

演算子 意味
+ 加算 10 + 5
減算 10 – 2
* 乗算 10 * 6
/ 除算 8 / 2
// 除算(小数点以下切捨) 9 // 2
% 剰余 9 % 2
** べき乗 2 ** 3

代入演算子

演算子 意味
= 単純な代入 a = 3 # aに3を代入
+= 加算して代入 a += 3 # a = a + 3 と同じ
-= 減算して代入 a -= 3 # a = a – 3 と同じ
*= 乗算して代入 a *= 3 # a = a * 3 と同じ
/= 除算して代入 a /= 3 # a = a / 3 と同じ
//= 除算して代入 a //= 3 # a = a // 3 と同じ
**= べき乗して代入 a **= 3 # a = a ** 3 と同じ
%= 剰余して代入 a %= 3 # a = a % 3 と同じ

比較演算子

演算子 使用例 意味
== a == b a と b は等しい
!= a != b a と b は等しくない
< a < b a は b よりも小さい(bを含まない:未満)
> a > b a は b よりも大きい(bを含まない:超過)
<= a <= b a は b よりも小さいか等しい(bを含む:以下)
>= a >= b a は b よりも大きいか等しい(bを含む:以上)

論理演算子

演算子 使用例 意味
and a == b and c == d aとbが等しい かつ cとdが等しい
or a == b or c == d aとbが等しい または cとdが等しい
not not a a が True なら False、 a が False なら True

例:四則演算 +α

a = 20
b = 10

print(a + b) # 足し算(結果:30)
print(a - b) # 引き算(結果:10)
print(a * b) # 掛け算(結果:200)
print(a / b) # 割り算(結果:2.0)
print(a % b) # 余り算(結果:0)
print(a ** b) # べき乗--aのb乗(結果:10240000000000)

順次

上から順番に処理が実行されていく

a = 100
b = 50
print(a + b)
# 結果:150

条件分岐

IF文

if 条件式:
    条件式が真(True)の時に実行する処理
例:xが10の時、xの値を出力する

x = 10
if x == 10:
    print(x)
# 結果:10

IF-ELSE文

if 条件式:
    条件式が真(True)の時に実行する処理
else:
    条件式が偽(False)の時に実行する処理
例:xが10の時、xの値を出力する。10じゃない時は、「違います」と出力する。

x = 2
if x == 10:
    print(x)
else:
    print('違います')
# 結果:違います

IF-ELIF-ELSE文

if 条件式1:
    条件式1が真の時に実行する処理
elif 条件式2:
    条件式1が偽で条件式2が真の時に実行する処理
else:
    すべての条件式が偽のときに実行する処理
例:xが5以下の時、「xは5以下です」xが10以下の時、「xは10以下です」それ以外の時、「xは10より大きいです」と出力する

x = 6
if x <= 5:
    print('xは5以下です')
elif x <= 10:
    print('xは10以下です')
else:
    print('xは10より大きいです')
# 結果:xは10以下です

何もしないブロックを作る(pass)

x = 10
if x == 10:
    pass
else:
    print('違います')
# 結果:
# (passなので何も表示されない)

反復処理(繰り返し)

For文とWhile文の使い分け・・・
For文は決められた回数だけループさせる
While文は条件式が真の間だけループさせる
っていう解釈で合ってるのかな・・・?

While文

while 条件式:
    条件式が真の時に繰り返す実行したい処理
# iが3以下の時に文字を出力

i = 1
while i <= 3:
    print(str(i) + '回目')
    i = i + 1

"""
結果:
1回目
2回目
3回目
"""
上記を分解してみる。
i = 1 # 変数 i の初期値は 1

while i <= 3: # i=1ということは、i は 3以下なので条件式は 「真(True)」だから下記を実行する
    print(str(i) + '回目') # 「1回目」と出力される
    i = i + 1 # iに1を足す。i=1なので1+1=2となり、2をiに代入する。(i=2になる)
# 繰り返し判定に戻る
while i <= 3: # i=2ということは、i は 3以下なので条件式は「真(True)」だから下記を実行する
    print(str(i) + '回目') # 「2回目」と出力される
    i = i + 1 # iに1を足す。i=2なので2+1=3となり、3をiに代入する。(i=3になる)
# 繰り返し判定に戻る
while i <= 3: # i=3ということは、i は 3以下なので条件式は「真(True)」だから下記を実行する
    print(str(i) + '回目') # 「3回目」と出力される
    i = i + 1 # iに1を足す。i=3なので3+1=4となり、4をiに代入する。(i=4になる)
# 繰り返し判定に戻る
while i <= 3: # i=4ということは、i は 3より大きいので条件式は「偽(False)」だから中身は実行せずにwhile文を終了する

For文

for 変数 in 繰り返しの範囲:
    実行したい処理

繰り返しの範囲をリストにした例

colors = ['red', 'blue', 'pink']
for val in colors:
      print(val)
"""
結果:
red
blue
pink
"""
上記を分解してみる。
colors = ['red', 'blue', 'pink'] # リストを定義して colors という変数に代入する

for val in colors: # colorsから1つ取り出して val という変数に代入(val='red')
    print(val) # val=redなので「red」が出力される
# 繰り返し
for val in colors: # colorsから1つ取り出して val という変数に代入(val='blue')
    print(val) # val=blueなので「blue」が出力される
# 繰り返し
for val in colors: # colorsから1つ取り出して val という変数に代入(val='pink')
    print(val) # val=pinkなので「pink」が出力される
# colorsから全て取り出したので、繰り返し終了

繰り返しの範囲をrange()関数にした例

for i in range(3):
    print(i)
"""
結果:
0
1
2
"""

Break文で繰り返し処理を強制終了

while文やfor文の繰り返し処理の中で使用
Breakで強制的に繰り返しから抜ける

i = 1
while i <= 5:
    if i == 3:
        break
    print(i)
    i = i + 1
"""
結果:
1
2
"""
上記を分解してみる。
i = 1 # 変数 i に 1 を代入

while i <= 5: # i=1ということは、i は 5以下なので条件式は 「真(True)」だから下記を実行する
    if i == 3: # i==1だから条件式に当てはまらないのでif文は飛ばす
        break # if文の処理は飛ばす
    print(i) # i=1なので「1を出力」
    i = i + 1 # iに1を足す。i=1なので1+1=2となり、2をiに代入する。(i=2になる)
# 繰り返し判定に戻る
while i <= 5: # i=2ということは、i は 5以下なので条件式は 「真(True)」だから下記を実行する
    if i == 3: # i==2だから条件式に当てはまらないのでif文は飛ばす
        break # if文の処理は飛ばす
    print(i) # i=2なので「2を出力」
    i = i + 1 # iに1を足す。i=2なので2+1=3となり、3をiに代入する。(i=3になる)
# 繰り返し判定に戻る
while i <= 5: # i=3ということは、i は 5以下なので条件式は 「真(True)」だから下記を実行する
    if i == 3: # i==3で条件式に当てはまるのでif文内を実行
        break # breakなのでこれより下の処理は実行せずに、ループを強制終了する。
    print(i) # 実行されない
    i = i + 1 # 実行されない
# ループ終了

Continue文で繰り返し処理のスキップ

while文やfor文の繰り返し処理の中で使用
Continueでループの先頭に戻る

i = 0
while i < 3:
    i = i + 1
    if i == 2:
        continue
    print(i)
"""
結果:
1
3
"""
上記を分解してみる。
i = 0 # 変数 i に 0 を代入

while i < 3: # i=0ということは、i は 3未満なので条件式は 「真(True)」だから下記を実行する
    i = i + 1 # iに1を足す。i=0なので0+1=1となり、1をiに代入する。(i=1になる)
    if i == 2: # i==1だから条件式に当てはまらないのでif文は飛ばす
        continue # if文の処理は飛ばす
    print(i) # i=1なので「1を出力」
# 繰り返し判定に戻る
while i < 3: # i=1ということは、i は 3未満なので条件式は 「真(True)」だから下記を実行する
    i = i + 1 # iに1を足す。i=1なので1+1=2となり、2をiに代入する。(i=2になる)
    if i == 2: # i==2で条件式に当てはまるのでif文内を実行
        continue # continueなのでこれより下の処理は実行せずに、繰り返し判定に戻る
    print(i) # 実行されない
# 繰り返し判定に戻る
while i < 3: # i=2ということは、i は 3未満なので条件式は 「真(True)」だから下記を実行する
    i = i + 1 # iに1を足す。i=2なので2+1=3となり、3をiに代入する。(i=3になる)
    if i == 2: # i==3だから条件式に当てはまらないのでif文は飛ばす
        continue # if文の処理は飛ばす
    print(i) # i=3なので「3を出力」
# 繰り返し判定に戻る
while i < 3: # i=3ということは、i は 3未満ではないので条件式は 「偽(False)」だから中身は実行せずにwhile文を終了する
    i = i + 1 # 実行されない
    if i == 2: # 実行されない
        continue # 実行されない
    print(i) # 実行されない
# ループ終了

range()関数

一定間隔で数字を呼び出す関数

引数が1つの場合 – range(引数)

0 から 引数-1】 までの数字を呼び出す。
range(5)の場合、【0~4】を呼び出す。
つまり、0,1,2,3,4が呼び出される。

for i in range(5):
    print(i)

"""
結果:
0
1
2
3
4
"""

引数が2つの場合 – range(第1引数,第2引数)

第1引数の数字 から 第2引数-1】 までの数字を呼び出す。
range(2,5)の場合、第1引数の 2 から、第2引数の5から1を引いた 4 まで、【2~4】を呼び出す。
つまり、2,3,4が呼び出される。

for i in range(2,5):
    print(i)

"""
結果:
2
3
4
"""

引数が3つの場合 – range(第1引数,第2引数,第3引数)

range(始まりの数字,終わりの数字-1,加算する数)
第2引数までは引数が2つの場合と同じ役割。
第3引数でいくつずつ増やすか決める。
range(1,8,2)の場合、第1引数の 1 から始まり、第2引数の8から1を引いた 7 までの数を、第3引数で指定した2つずつ加算していく。
【1~7を2ずつ加算しながら】呼び出す。

for i in range(1,8,2):
    print(i)

"""
結果:
1
3
5
7
"""

第3引数に負の数を入れると、逆順になる。

for i in range(3,0,-1):
    print(i)

"""
結果:
3
2
1
"""