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 """