変数とはなにか!!

 
変数とは
 
ある値につける、ニックネームの様なものです。
 
変数でできる事
 
明示的な値の代わりに使う事ができる
 
例えば
 
10という数字にnumというニックネームをつけると、
 
print(num)
 
実行すると
 
10
 
と表示されます。
 
参考資料
  • 変数とは値につけるニックネームのようなもの

  • 明示的な値の代わりに変数を使うことができる
 
変数への代入
 
前回説明したように、変数とは値にニックネームをつける様なものです。
 
代入とは値にニックネームをつける行為のことです。
 
つまりニックネームを値につける行為が代入です。
 
代入は、イコール記号を使います。
 
=記号を代入演算子と言います。
 
では変数に値を代入してそれを出力します。
 
num=5#この様に左辺に変数の名前、右辺に代入したい名前を書きます。
s="paiza"
 
print(unm)#この時は()の中にダブルコーテションは要らない。
print(s)
 
実行すると
 
5
paiza
 
が出力されます。
 
また、=の右辺に演算式を書いてその演算結果を代入する事も可能です。
 
例えば次の様なコードです。
 
num = 5 * 3
print(num)
 
 これで出力すると
 
15
 
が出力されます。
 
この事から、右辺の演算結果が変数numに代入されています。
 
次に、右辺に既に代入されている変数を置く事もできます。
 
例えば次の様なコードです。
 
num = 5
num_2 = num#numの後に数字を書く時_を入れます。
print(num_2)
 
num_3 = num + 1
print(num_3)
 
実行すると
 
5
6
 
が出力されます。
 
参考資料
 
  • 値にニックネームをつけることが代入

  • 変数に代入したあとは、その変数を通してその値を扱うことができる

  • 代入は「=」を使う

  • 変数に代入するコード:
    num = 5
    s = "paiza"
    
    print(num)
    print(s)
    
    

  • 演算結果を代入するコード:
    num = 5 * 3
    print(num)
    
    

  • 変数の値を使って代入するコード:
    num = 5
    num_2 = num
    print(num_2)
    
    num_3 = num + 1
    print(num_3)
    
 

変数への再代入

 

一度代入した変数に再度代入する事ができます。

 

これを再代入と言います。

 

再代入は、次のコードの様に書きます。

 

num = 1

print(num)

 

num = 2#ここで再代入している

print(num)

 

実行すると

 

1

2

 

出力されます。

 

一度用意した変数numの値が、再代入によって変わっていることがわかります。

 

再代入の際に、右辺に代入先の変数を置く事ができます。

 

例えば次の様なコードです。

 

num = 1

print(num)

 

num = num + 2

print(num)

 

実行すると

 

1

3

 

が出力されます。

 

変数numに2を足して変数numに再代入しています。

 

このタイプの再代入は次のコード様にして書く事ができます。

 

num = 1

nim += 2

 

print(nim)

 

実行すると

 

3

 

と出力されます。

 

累算代入演算子

 

    演算子  例     説明             同じ意味

 

    +=        a += b         aにa+bの結果を再代入する        a = a + b

                -=        a -= b          aにa-bの結果を再代入する         a = a - b      

                *=        a *= b          aにa*bの結果を再代入する         a = a * b

                 **=     a**= b          aにa**bの結果を際代入する  a = a ** b

                 /=       a / = b           aにa/bの結果を再代入する    a = a / b

                 //=     a // = b          aにa//bの結果を再代入する    a = a // b

               %=       a % = b.       aにa%bの結果を再代入する  a = a % b

 

上の表のように、再代入します。

 

今度は、引き算から行なっていきます。

 

次の様なコードです。

 

num = 1

num -= 1  # num = num -1 と同じ意味

print(num)

 

実行すると

 

0

 

が出力されます。

 

次は、*演算子です。

 

コードは

 

num = 2

um *= 12 # num = num * 12 と同じ意味

print(num)

 

実行すると

 

24

 

と出力されます。

 

次は、/演算子です。

 

コードは

 

num = 2

num /= 2 #um = num / 2 と同じ意味

print(num)

 

実行すると

 

1.0

 

が浮動小数点数として表示されます。

 

次は、//演算子です。

 

コードは

 

num = 2

num //= 2 # um = num // 2と同じ意味。//の場合は、不動週数点数は切り捨て。

print(num)

 

実行すると

 

1

 

が出力されます。

 

次は、%演算子です。

 

コードは

 

num = 7

num %= 5 # num = num % 5 と同じ意味。

print(num)

 

実行すると

 

2

 

が出力されます。

 

次に、**演算子について解説します。

 

コードは

 

num = 5

num **= 2 # num = num ** 2 と同じ意味

pint(num)

 

実行すると

 

25

 

と出力されます。

 

最後にPythonは、再代入の際に肩に縛られないという特徴について学習しましょう。

 

コードで確認しましょう。

 

a = "paiza"

print(a)

 

a = 813

print(a)

 

実行すると

 

paiza

813

 

とエラーなく実行できました。

 

javaなどの型に厳格な言語では、この様な操作はできないので、これはPythonの一つの特徴と言えます。

 

但し、型を横断する再代入を繰り返すコードは、コードのデバック時にトラブルの原因になりうるので望ましいとは言えないです。

 

参考資料

 

  • 一度代入した変数に再度値を代入することを再代入という

  • 再代入するコード:
    num = 1
    print(num)
    
    num = 2
    print(num)
    
    

  • 演算して再代入するコード:
    num = 1
    print(num)
    
    num = num + 2
    print(num)
    
    

  • 再代入をおこなう演算子を用いたコード:

    num = 1
    num += 2  # num = num + 2 と同じ意味
    print(num)

    num = 1
    num -= 1  # num = num - 1 と同じ意味
    print(num)

    num = 2
    num *= 12  # num = num * 12 と同じ意味
    print(num)

    num = 2
    num /= 2  # num = num / 2 と同じ意味
    print(num)

    num = 2
    num //= 2  # num = num // 2 と同じ意味
    print(num)

    num = 7
    num %= 5  # num = num % 5 と同じ意味
    print(num)

    num = 5
    num **= 2  # num = num ** 2 と同じ意味
    print(num)

参考資料2
 
  • Python は再代入する際に型を変更することができる
    a = "paiza"
    print(a)
    
    a = 813
    print(a)
    
    

  • ただし、型を横断する再代入を繰り返すコードは、コードのデバッグ時にトラブルの原因になりうるので望ましいとはいえない